![](https://img-blog.csdnimg.cn/20201014180756927.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
数据结构
文章平均质量分 55
K先生_
这个作者很懒,什么都没留下…
展开
-
数据结构之大顶堆
大顶堆:先用顺序表存储节点(0不存储节点),然后把根节点下面的都当做子树(也就是有n-1颗子树),然后把每个子树中的最大值都放在根节点上。从顺序表中第n/2个节点也就是倒数第二行的节点开始,然后把最后一行所有比较大的数都被提到倒数第二行,然后当节点执行到倒数第三行的时候,所有较大的数又被移动到倒数第三行…当执行到第一行的时候最大数就被移动到根节点,而且这时候每个节点都是子树中选出的最大值!然后...原创 2019-06-11 14:39:45 · 1211 阅读 · 0 评论 -
数据结构之插入排序
数据结构之插入排序插入排序的一些代码插入排序的一些代码// An highlighted block#include<stdio.h>#include<stdlib.h>#define LENGTH 8//直接插入排序void InsertSort(int a[]){ print原创 2019-06-11 14:39:34 · 219 阅读 · 0 评论 -
数据结构之归并排序
代码出处:https://blog.csdn.net/qq_41174677/article/details/88630180归并排序的思路就是先两个两个的比较,然后再四个四个的比较,然后再八个八个的比较以此类推。比较完成之后就排序好了。#include<stdio.h>#include<stdlib.h>//将有二个有序数列a[first...mid]和a[mi...原创 2019-06-11 14:40:03 · 152 阅读 · 0 评论 -
数据结构之基数排序
基数排序#include <stdio.h>#include <stdlib.h>#define BASE 10 //基数桶[0-9]void radixsort(int arr[], int size){ if (arr == NULL) return; //找出最大数 int max = arr[0]; int i; for (i = 1;...原创 2019-06-11 14:39:55 · 967 阅读 · 0 评论 -
数据结构之希尔排序
希尔排序希尔排序其实就是一个插入排序。只不过希尔排序会把待排序列,分成若干个子序列,然后分别进行插入排序。这样处理过后整个序列就“基本有序”,再对所有记录进行一次插入排序希尔排序其实就是一个插入排序。只不过希尔排序会把待排序列,分成若干个子序列,然后分别进行插入排序。这样处理过后整个序列就“基本有序”,再对所有记录进行一次插入排序以下是插入排序的代码#include&lt;stdio.h&g...原创 2019-06-11 14:39:19 · 136 阅读 · 0 评论 -
数据结构之快速排序
快速排序说的有点多,要不直接看代码吧,代码比较容易理解快速排序:定义一个数组arr,下标0不用(有另一个用处)从1开始存储数据。1是low,n-1是high,把low此时的下标作为基点。首先把基点存储在arr[0],后从high开始找到小于基点arr[0]的。找到后就把找到的数放到arr[low](因为arr[low]已经保存了,所以可以直接覆盖arr[low]=arr[high]),然后再...原创 2019-03-17 23:45:26 · 904 阅读 · 0 评论