摘要: 这一部分内容是关于数据结构的一些基础概念,这有助于我们理解后续的内容: 【1】数据:对客观事物的符号表示,在计算机中是指所有能输入到计算机处理的符号的总称。 【2】数据元素:数据组成的基本单位,元素一般作为数据结构中的一个整体考虑和处理,可能包含多个数据项,例如表中的一条记录为一个数据元素,但含有多 阅读全文
posted @ 2022-02-02 02:03 knns 阅读(91) 评论(0) 推荐(0)
摘要: 一、冒泡排序 原理:从第一个元素开始遍历比较,如果相邻元素大于它,就做一次交换,冒泡完成的元素不参与下一次比较,由此可见越往后的元素需要比较的次数递减,for循环可实现。 源代码: void bubble_sort(int *array, int size_array) { for(int j =  阅读全文
posted @ 2021-06-13 13:29 knns 阅读(75) 评论(0) 推荐(0)
摘要: 原理:快速排序需要选择一个元素作为key,然后以key为基准,比key小的放在左边,比key大的放在右边,这是一次过程。一次划分为两个区间,左右区间再用同样的方法进行排序,当最小区间排序完成,则快速排序完成,可返回结果。 key元素选择:每次选择末尾元素作为当前区间的key。 源代码:用户先录入设定 阅读全文
posted @ 2021-06-12 12:22 knns 阅读(74) 评论(0) 推荐(0)
摘要: 原理:归并排序采用分治的思想,将一组数据进行二分,划分次数为nlgn(先分),再从最小区间开始逐级往上进行排序合并(再治),合并操作是一次遍历完成,所以时间复杂度是n,整个算法的时间复杂度为nlgn。此外,归并排序需要额外的空间存储,大小为n。 源代码:用户先录入设定大小个数的元素,元素在一行用空格 阅读全文
posted @ 2021-06-12 12:18 knns 阅读(83) 评论(0) 推荐(0)