随笔分类 - 数据结构与算法
摘要:二分查找 也称为折半查找 是一种比较高效的查找方法 但是,它有个前提 就是 查找的序列一定要是有序的 查找的序列一定要是有序的 查找的序列一定要是有序的 . . . 代码测试 #include <stdio.h> // 二分查找法 bool search_key(int *src, int size
阅读全文
摘要:哈希排序 希尔排序(Shell's Sort)是插入排序的一种又称“缩小增量排序”(Diminishing Increment Sort),是直接插入排序算法的一种更高效的改进版本 既然是插入排序法的改进版本 那什么是插入排序法?请看 c语言实现插入排序代码 那么,它是如何改进的呢? 假设有 [8,
阅读全文
摘要:目的 使用C语言实现一个栈。 使用2个栈实现队列效果 栈与队列 栈: 元素先进后出。 只有 1 个口子,所以只能先进后出 队列:元素先进先出。 有 2 个口子,所以可以先进先出 理解完后, 上代码。 实现一个栈 #include <stdlib.h> #include <stdio.h> #incl
阅读全文
摘要:选择排序法 它的基本思想是把每次都遍历数组中的最小值(最大值)放在最初位置。 核心思想: 假定一个元素是最小值(或最大值) 然后拿第一个元素和剩余的元素比较,如果符合条件,就把当前元素和第一个元素调换位置 一直遍历完成,那么一次遍历,最小值(或最大)肯定在第一个元素位置 然后 第二次遍历,就拿第二个
阅读全文
摘要:插入排序法 插入排序法:它的基本思想是将一个数据插入到已经排好序的有序表中,从而完成所有数据排序。 它核心思想是: 把第一个元素看做是一个有序列表 然后取下一个元素来插入到这个有序列表中 有序表最初只有第一个元素,通过不断的重复插入其他元素就完成排序啦 本次采用C语言的方式实现。 代码实现 #inc
阅读全文
摘要:冒泡排序法 方法:通过重复的遍历元素然后比较相邻的两个元素大小交换位置实现的。 核心就是相邻的两个元素,要是符合条件的话就 不断的交换, 不断的交换, 不断的交换。 . . . 本次采用C语言的方式实现。 完整代码 #include <stdio.h> // 打印数组 void print(int
阅读全文

浙公网安备 33010602011771号