![](https://img-blog.csdnimg.cn/2021012013083525.jpg?x-oss-process=image/resize,m_fixed,h_224,w_224)
数据结构
文章平均质量分 63
对数据结构学习终于到的问题和重要知识点进行记录和总结
Numb-Nanboo
怕什么真理无穷,进一寸有一寸的欢喜。
展开
-
C 语言:一个简单的冒泡排序
冒泡排序是经常用到的一种排序算法,他的原理和实现方式是怎么样的呢?1.冒泡排序算法思想:一言以蔽之:从第一个元素开始,比较相邻两个元素的值的大小,把较大或者较小的数字放在后面。进行n-1次迭代就可以得到排序之后的结果。上图来自:https://blog.csdn.net/qq_416798182.主要代码外层循环是循环的次数,10个元素的数组,只需要循环9次;内层循环是遍历数组,每次遍历的时候,都不需要遍历有序的部分。再进行判断,是否第一个数字比第二个数字大,如果a[j]>a.原创 2021-01-26 14:06:29 · 194 阅读 · 0 评论 -
递归实现链表的一些操作
递归作为一种重要的算法思想,在链表中也有特别大的作用,特别是逆序输出时,代码更加简单。以一个题为例:设head指向一个非空单向链表:1.输出链表所有结点的值2.逆向输出所有结点的值3.返回链表所有结点的和4.返回链表奇数的个数5.返回数据为key的结点地址,若未找到,返回NULL首先,我们需要用递归创建一个链表。ElemSN *CreatLink(int a[] , int n){ ElemSN ...原创 2018-04-19 01:12:40 · 1445 阅读 · 0 评论 -
三元组转置稀疏矩阵
当一个矩阵中非零元素远小于矩阵中元素的个数时,如果用简单的二维数组来表示矩阵就会造成大量的空间占用, 所以引进三元组来表示稀疏矩阵。如下:typedef struct{ int i , j;//表示非零元素的行列 int v;//矩阵的非零元素 }SPNode;typedef struct{ int m , n , t;//表示矩阵的行,列及非零元素的个数 SPNode data[SMA...原创 2018-04-21 03:38:07 · 1392 阅读 · 0 评论