前言 希尔排序是对插入排序的改进,引入维基百科的说明: 希尔排序是基于插入排序的以下两点性质而提出改进方法的: 1. 插入排序在对几乎已经排好序的数据操作时,效率高,即可以达到 "线性排序" 的效率 2. 但插入排序一般来说是低效的,因为插入排序每次只能将数据移动一位 原文链接 "希尔排序" ),本 ...
分类:
编程语言 时间:
2020-04-10 00:37:31
阅读次数:
77
算法、数据结构 理论基础 数据结构 栈,队列,链表,二叉树 算法: 选择,冒泡,二分查找,快速排序,希尔排序,插入排序,二叉树的排序,链表排序 什么是计算机科学? 首先明确的一点就是计算机科学不仅仅是对计算机的研究,虽然计算机在科学发展的过程中发挥了重大的作用,但是它只是一个工具,一个没有灵魂的工具 ...
分类:
编程语言 时间:
2020-04-09 22:53:40
阅读次数:
147
1. 排序 1.1 冒泡排序 1.2 选择排序 1.3 插入排序 1.4 希尔排序 1.5 快速排序 1.6 归并排序 2. 搜索 1. 排序 排序算法(英语:Sorting algorithm)是一种能将一串数据依照特定顺序进行排列的一种算法。 排序算法的稳定性 稳定性:稳定排序算法会让原本有相等 ...
分类:
编程语言 时间:
2020-04-09 00:41:32
阅读次数:
85
算法 1、排序算法 冒泡排序 选择排序 插入排序 快速排序 希尔排序 计数排序 2、列表查找 从列表中查找指定的元素 顺序查找 从列表第一个元素开始,顺序进行搜索,直到找到为止 二分查找 从有序列表的候选区data[0: n]开始,通过对待查找的值与候选区中的值比较使候选区的值减半 数据结构与算法动 ...
分类:
编程语言 时间:
2020-04-07 09:58:34
阅读次数:
98
#include<iostream> using namespace std; int main() { //插入排序理解 int arr[] = { 56, 12, 3, 7, 11,55,456,123,55,44,6,7,8,999,1 }; //定义一个int类型数组 int m = 0; ...
分类:
编程语言 时间:
2020-04-06 13:19:07
阅读次数:
56
排序算法 直接插入排序:将数组中的所有元素依次跟前面已经排好的元素相比较,如果选择的元素比已排序的元素小,则交换,直到全部元素都比较过 希尔排序:将待排序数组按照步长gap进行分组,然后将每组的元素利用直接插入排序的方法进行排序;每次将gap折半减小,循环上述操作;当gap=1时,利用直接插入,完成 ...
分类:
编程语言 时间:
2020-04-06 09:46:47
阅读次数:
78
[TOC] 排序 快速排序 插入排序 希尔排序 ...
分类:
编程语言 时间:
2020-04-05 15:34:17
阅读次数:
81
1 /** 2 * Definition for singly-linked list. 3 * struct ListNode { 4 * int val; 5 * ListNode *next; 6 * ListNode(int x) : val(x), next(NULL) {} 7 * }; ...
分类:
编程语言 时间:
2020-04-03 12:22:52
阅读次数:
63
1.算法基础之冒泡排序,选择排序,插入排序,快排序 ...
分类:
编程语言 时间:
2020-04-03 01:02:41
阅读次数:
279