ICode9

精准搜索请尝试: 精确搜索
  • C程序数组算法 — 插入法排序(细心看)2020-07-14 16:33:43

    #include<stdio.h> int main() { int arr[10] = {1,3,5,7,9,2,4,6,8,10}; //随便打的 int i,j,temp; // i j 是引用下标的 temp 是用来表示不变的"比数" for(i = 0;i<10;i++) // 从第二个元素开始比 到最后(9)一个元素 { temp = arr[i]; //temp 是用来表示不变的"比数" temp发挥

  • 重新整理数据结构与算法(c#)—— 堆排序[二十一]2020-07-10 11:01:35

    前言 将下面按照从小到大排序: int[] arr = { 4, 6, 8, 5, 9 }; 这时候可以通过冒泡排序,计数排序等。 但是一但数据arr很大,那么会产生排序过于缓慢,堆排序就是一个很好的解决方案。 树的堆,有最大堆和最小堆。 看下最大堆: 它是这样子的,就是说一个节点的大小一定大于它的左节点和右

  • 排序算法——希尔排序2020-07-10 10:43:24

    一、简单插入排序问题   简单插入排序存在的问题   我们看简单的插入排序可能存在的问题. 数组 arr = {2,3,4,5,6,1} 这时需要插入的数 1(最小), 这样的过程是: {2,3,4,5,6,6} {2,3,4,5,5,6}{2,3,4,4,5,6}{2,3,3,4,5,6}{2,2,3,4,5,6}{1,2,3,4,5,6}   结论: 当需要插入的数

  • 冒泡排序和选择排序2020-07-08 20:35:08

    冒泡排序 var arr = [4,2,5,7,8,2,1] console.log(arr) // 用冒泡排序从小到大 // 总共有arr.length个数,每一趟都能确定一个最大值,但是最后一个不需要比较 // 所以总共要比较arr.length-1趟 0 ~ length-2 // 5 4 0~3 for (var i = 0; i < arr.leng

  • P3292 [SCOI2016]幸运数字2020-07-07 22:05:28

    lca倍增的途中,merge一下线性基。注意线性基是从自己开始,而倍增数组fa[i][0]等于father,意味着,线性基倍增的区间是左闭右开的,fa数组是左闭右闭 #include<iostream> #include<cstring> #include<algorithm> #include<cmath> #include<cstdlib> #include<climits> #include<stack> #in

  • C程序设计实验报告(七)2020-07-07 11:08:47

    C程序设计实验报告(七) 实验项目: 8.3.1 指针基础及指针运算 8.3.2 数据交换 8.3.3 字符串反转及字符串连接 8.3.4 数组元素奇偶排序 姓名:徐志平 实验地点:学校 实验时间:2020.7.7 一、实验目的与要求 1、掌握指针的概念和定义方法。 2、掌握指针的操作符和指针的运算。 3、掌握指针

  • C程序设计实验报告七2020-07-06 21:02:55

    C程序设计实验报告 实验项目:8.3.1 8.3.2 8.3.3 8.3.4 姓名:李广军 实验地点:实验教室 实验时间:6.7 一、实验目的与要求 1、掌握指针的概念和定义方法。 2、掌握指针的操作符和指针的运算。 3、掌握指针与数组的关系。 4、掌握指针与字符串的关系。 5、熟悉指针作为函数的参数及返回

  • 冒泡排序之基础优化2020-07-06 17:35:07

    普通版本 function doubleSort(arr) {   let len = arr.length - 1;   for(let i=0; i<arr.length; i++) {   // 第一层循环遍历总次数     for(let j=0; j<len-i; j++) {    // 第二层循环 从左往右 j 与 j + 1 数值比较       if(arr[j] > arr[j+1]) {

  • 08 练习题:文件操作2020-07-06 15:35:12

    # 1.有如下文件,a1.txt.txt,里面的内容为: # # 老男孩是最好的学校, # # 全心全意为学生服务, # # 只为学生未来,不为牟利。 # # 我说的都是真的。哈哈 # 分别完成以下的功能: # a.将原文件全部读出来并打印。 # b,在原文件后面追加一行内容:信不信由你,反正我信了。 # c,将原文件全部

  • 二叉树--后序遍历的递归和非递归(leetcode 1452020-07-04 22:06:55

    非递归 思路1 用两个栈实现后序遍历的步骤: 申请一个栈stack1,将头节点压入栈中 将stack1中元素弹出,记为temp,依次将temp的左孩子,右孩子压入stack1(如果有的话 每个从stack1中弹出的元素都压入stack2 4.不断重复步骤2,3直到stack1为空停止 5.从stack2中依次弹出并打印就是后序

  • 数据结构与算法(十):哈希表2020-07-04 14:09:45

    一、什么是哈希表 1.概述 哈希表(Hash table,也叫散列表),是根据关键码值(Key value)而直接进行访问的数据结构。也就是说,它通过把关键码值映射到表中一个位置来访问记录,以加快查找的速度这个映射函数叫做散列函数,存放记录的数组叫做散列表。 通俗的理解一下: 如果我们有n个元素要

  • python爬取未来一周天气信息2020-07-03 17:42:04

    """python爬取昆明天气信息""" import requests import time import csv import random import bs4 from bs4 import BeautifulSoup def get_content(url,data=None): headers={ 'User-Agent':'Mozilla/5.0 (Windows NT 10

  • AC算法--python2020-07-02 14:05:24

    # 结点类 class node: def __init__(self, ch): self.ch = ch # 结点值 self.fail = None # Fail指针 self.tail = 0 # 尾标志:标志为 i 表示第 i 个模式串串尾 self.child = [] # 子结点 self.childvalue = [] # 子结点的值 #

  • 冒泡排序2020-07-02 13:37:12

    public class PaiXu { public static void main(String[] args) { int[] a = {34,1,24,6,78}; System.out.println(Arrays.toString(MaoPao(a))); } public static int[] MaoPao(int[] array){ //临时变量 int temp = 0; //外层循环

  • mysql中扩充分区表(扩充时间分区表)2020-07-02 11:04:05

    连接数据库:mysql -h x.x.x.x -P 端口号 -u 用户名 -p密码show databases;use 你自己的库名;show tables;show full columns from alarm; 查看表的属性 alarm是表名 我的库lianxi中的表举例如下:show tables;+--------------------+| Tables_in_lianxi |+--------------------+| t

  • SQLServer pivot 行转列2020-07-02 10:37:06

    设计表如下 --收入表 CREATE TABLE income ( inid INT PRIMARY KEY IDENTITY(1, 1), indate DATETIME, --时间 intype VARCHAR(10), -- 收入类型 amount DECIMAL(18, 2) --金额 )   查询按年月,将收入类型从行转成列   DECLARE @sql varchar(8000) -

  • 单链表2020-06-30 18:02:02

    前面详细地介绍了顺序表,本节给大家介绍另外一种线性存储结构——链表。链表,别名链式存储结构或单链表,用于存储逻辑关系为 "一对一" 的数据。与顺序表不同,链表不限制数据的物理存储状态,换句话说,使用链表存储的数据元素,其物理存储位置是随机的。例如,使用链表存储 {1,2,3},数据的物理

  • 排序算法-希尔排序(移位式)2020-06-28 11:04:21

    希尔排序是直接插入排序算法的一种更高效的改进版本,又称"缩小增量排序"。希尔排序是把记录按下标的一定增量分组,对每组使用直接插入排序算法排序;随着增量逐渐减少,每组包含的关键词越来越多,当增量减至1时,算法结束。 希尔排序: 时间复杂度是O(nlogn) 最好情况O(nlog2n) 最坏情

  • 归并排序(Java)2020-06-27 14:57:02

    归并排序(Java) 博客说明 文章所涉及的资料来自互联网整理和个人总结,意在于个人学习和经验汇总,如有什么地方侵权,请联系本人删除,谢谢! 归并排序介绍 归并排序(MERGE-SORT)是利用归并的思想实现的排序方法,该算法采用经典的分治(divide-and-conquer)策略(分治法将问题分(divide)成一些小的

  • LeetCode 797. 所有可能的路径2020-06-26 18:55:10

    题目链接 797. 所有可能的路径 题目分析 这个题,给了一个有向图的背景,然后要求我们把所有满足条件的路径都输出出来,看到返回值上的List<List>,刷题量比较多的人都知道这种一般都是回溯法解决。 代码实现 class Solution { public List<List<Integer>> allPathsSourceTarget(int[

  • dict遍历的时候删除dict中的值报错RuntimeError: dictionary changed size during iteration2020-06-25 18:52:55

    遇到的error,当遍历字典的时候修改字典数据会报错,例如 temp = {'name': 'Mike', 'age': '25', 'shengao': 180, 'weight': 80} for key,value in temp.items(): del temp[key] #RuntimeError: dictionary changed size during ite

  • 1015 Reversible Primes2020-06-24 18:02:01

    A reversible prime in any number system is a prime whose "reverse" in that number system is also a prime. For example in the decimal system 73 is a reversible prime because its reverse 37 is also a prime. Now given any two positive integers N (&

  • C# 队列(Queue)2020-06-23 22:56:12

    C# 队列(Queue) 队列(Queue)代表了一个先进先出的对象集合。当您需要对各项进行先进先出的访问时,则使用队列。当您在列表中添加一项,称为入队,当您从列表中移除一项时,称为出队。 Queue 类的方法和属性 Queue 类的一些常用的 属性 属性 描述 Count 获取 Queue 中包含的元素个数。

  • 链表--K个一组反转链表(leetcode 252020-06-23 22:55:07

    解法 思路: 大致过程可以分解为 1、找到待翻转的k个节点(注意:若剩余数量小于 k 的话,则不需要反转,因此直接返回待翻转部分的头结点即可)。 2、对其进行翻转。并返回翻转后的头结点(注意:翻转为左闭又开区间,所以本轮操作的尾结点其实就是下一轮操作的头结点)。 3、对下一轮 k 个节点也进行

  • 搜索专题总结2020-06-23 21:53:17

    最近考完试了。闲下来就正好刷刷以前没刷完的搜索专题。 简单搜索就没啥好讲的啦。就是暴力bfs和dfs。 这篇博客是kuangbin搜索进阶的专题的总结 八数码问题太经典啦。通过它来学习搜索的进阶技巧就很舒服。 首先是最简单的康拓优化。 康托展开(Hash序列权值,可以用于序列打表: int

专注分享技术,共同学习,共同进步。侵权联系[admin#icode9.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有