![](https://img-blog.csdnimg.cn/20201014180756757.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
数据结构
数据结构相关知识
FF_y
这个作者很懒,什么都没留下…
展开
-
数据结构(4)
九、外部排序外部排序算法是跟外存有关的,之前所讲的排序算法都是将数据一次性读取到内存中再进行排序的。(一)多路归并排序之前所讲的二路归并排序,它的关键操作就是把两个有序的序列归并一个更长的有序序列。三路归并排序,由并列的三个有序序列,每次从序列中挑出一个最值关键字,把它并入结果序列中。n路归并排序就会有n个有序序列。对于三路归并排序,归并的过程中,每次都是三个有序序列中的第一个为待挑...原创 2020-06-06 23:11:58 · 1263 阅读 · 0 评论 -
排序算法
一、冒泡排序输入一系列不按大小排序的数字,通过两个循环嵌套将最大的数字往后排,具体的实现是:通过外层循环限制进行比较的轮数,轮数一般都是输入数字的个数,通过内层循环限制每轮进行比较的次数,每轮进行比较的次数一般都是输入数字的个数-1。这样的话,每一轮比较都能将最大的数、第二大的数、第三大的数······往后排,最终形成由小到大的顺序。import java.util.Scanner;impo...原创 2019-12-20 20:45:40 · 107 阅读 · 0 评论 -
数据结构(1)
文章目录一、基础(一)结构体的定义方法(二)引用型定义(三)链式存储结构一、基础(一)结构体的定义方法考研中常用的两种结构体定义方法:typedef struct{ int a; float b; char c; ...}结构体名typedef struct 结构体名{ int a; float b; char c; struct 结构体名 *d; ...}结...原创 2020-06-06 23:11:04 · 331 阅读 · 0 评论 -
数据结构相关代码
结构体定义方法typedef struct{ int a; float b; char c; ...}结构体名typedef struct 结构体名{ int a; float b; char c; struct 结构体名 *d; ...}结构体名变量引用int result = 0;void add(int *r){ (*r)++;}调用方法:add(&result);//这里的&是取地址符int *p = NULL;voi.原创 2020-07-20 18:52:29 · 385 阅读 · 0 评论 -
数据结构(5)
十、算法分析(一)时间复杂度首先看两条定义将T(N)、cf(N)、cg(N)的函数图像画出来,注意这两个函数的系数c以及n0都是不一样的。首先看T(N)和cf(N)的图像,cf(N)看起来像是T(N)的上界,当N大于某个常数时,cf(N)始终都大于T(N)。类似的,看T(N)和cg(N),当N大于某个常数的时候,cg(N)可以看成是T(N)的一个下界。假如T(N)代表某一个算法对于规模为...原创 2020-06-06 23:12:09 · 444 阅读 · 0 评论 -
折半插入排序代码
//arr:关键字//n:关键字个数void BInsertSort(int arr[],int n){ int temp,i,j,low,high,mid; //i从1开始,将arr[0]视作有序序列 for(i = 1; i <=n; ++i) { temp = arr[i]; //low和high分别指向有序序列的首部和尾部 low = 0; high = i-1; //折半查找 while(low <= high) { mid = (low原创 2020-08-10 21:59:08 · 1349 阅读 · 0 评论 -
数据结构(2)
四、特殊矩阵的压缩存储(一)数组数组是一种逻辑结构。逻辑上是把一些类型相同的数据排列成一排,然后给它附上下标,方便指出数组中的任何一个元素。前面所用的数组严格来说是用c语言来实现数组的存储结构。用c语言实现数组的存储结构:二维数组是元素全部为一维数组的一维数组二维数组的行优先存储和列优先存储问题,二维数组在内存中也是一维的,只不过我们在逻辑上将其视为二维的。行优先存储就是先存完二...原创 2020-06-06 23:11:21 · 533 阅读 · 0 评论 -
数据结构(3)
七、图原创 2020-06-06 23:11:34 · 419 阅读 · 0 评论