内部排序 插入排序 直接插入排序 插入排序的思想是,假定前面i个元素已经有序,然后针对于第i+1个元素,寻找第i+1个元素应该在的位置,插入,移动即可 没有哨兵的直接插入排序 public static void insertSort(int arr[]){ // 插入排序的思想是,假定前面i个元素 ...
分类:
编程语言 时间:
2020-11-26 14:23:23
阅读次数:
5
今天的每日一题主要考验了链表的操作和插入排序,综合来说还是简单的,记录一下!! 题目描述: 代码实现如: public ListNode insertionSortList(ListNode head) { if(head==null){ return null; } ListNode headPo ...
分类:
编程语言 时间:
2020-11-24 12:33:53
阅读次数:
9
插入排序算法: 插入排序是迭代的,每次只移动一个元素,直到所有元素可以形成一个有序的输出列表。 每次迭代中,插入排序只从输入数据中移除一个待排序的元素,找到它在序列中适当的位置,并将其插入。 重复直到所有输入数据插入完为止。 示例 1: 输入: 4->2->1->3 输出: 1->2->3->4 示 ...
分类:
编程语言 时间:
2020-11-24 12:23:16
阅读次数:
8
对于给定的一组记录,初始时假设第一个记录自成一个有序序列,其余记录为无序序列。接着从而个记录开始,按照记录的大小依次将当前处理的记录插入到其之前的有序序列中,直至最后一条记录插入到有序序列中为止。 例如:数组 {38,65,97,76,13,27,49}第一步插入38以后:[38]65 97 76 ...
分类:
编程语言 时间:
2020-11-20 11:28:24
阅读次数:
46
1.插入排序//排序函数funcsortarr(arr*[]int)*[]int{fori:=1;i<len(*arr);i++{maxindex:=(*arr)[i]//默认一个数为最大值index:=i-1//index从0开始forindex>=0&&(*arr)[index]>maxindex{//index大于等于0,如果数组中有比maxindex值大的
分类:
编程语言 时间:
2020-11-18 12:36:32
阅读次数:
5
引入:简单插入排序存在的问题 插入排序可能存在的问题是数组 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 ...
分类:
编程语言 时间:
2020-11-13 12:19:31
阅读次数:
8
阅读本文大概需要5分钟本文我们主要来回忆一下几个基础的排序算法:冒泡排序、选择排序和插入排序。已经成为大牛的你,还记得当初这几个经典的排序算法吗?1.冒泡排序冒泡排序算法运行起来非常慢,但在概念上它是排序算法中最简单的,因此冒泡排序算法在刚开始研究排序技术时是一个非常好的算法。冒泡排序算法的基本流程是:每一轮从头开始两两比较,将较大的项放在较小项的右边,这样每轮下来保证该轮最大的数在最右边。算法程
分类:
编程语言 时间:
2020-11-10 11:37:53
阅读次数:
20
147. 对链表进行插入排序 方法一:插入排序 准备curr,prev当前节点和前驱节点用于判断是否有逆序的情况;再准备一个哨兵节点用于排序链表的插入。 tmp.next != curr && tmp.next.val < curr.val对应的逻辑关系是:此时对应当前节点curr的值$<$前驱节点 ...
分类:
编程语言 时间:
2020-10-24 09:46:15
阅读次数:
22
选择 冒泡排序过程,插入排序移动次数,快速排序二轮划分 chmod命令 死锁出现的情况 八进制乘法 设计模式判断 白盒测试用于(单元测试) SQL建立存储的过程 操作系统分区管理 LRU/OPT算法缺页次数 UDP/TCP TCP报文首部(看一条,哪部分是哪部分) 进程调度算法 前序+中序->后序 ...
分类:
其他好文 时间:
2020-10-14 19:59:50
阅读次数:
18
分治算法定义 将一个问题分解成多个子问题,将问题缩小到一定规模后逐个求解,最后合并所有子问题 分治算法步骤 分解(将原问题分解成一个形式相同规模更小的子问题) 解决(递归求解子问题,直到问题的规模足够小,直接求解) 合并(合并子问题的解,得到原问题的解) 分治算法例题(实际应用) 插入排序 思路 一 ...
分类:
编程语言 时间:
2020-09-17 13:57:45
阅读次数:
33