摘要:
冒泡排序(Bubble Sort),是一种计算机科学领域的较简单的排序算法。它重复地走访过要排序的元素列,依次比较两个相邻的元素,如果顺序(如从大到小、首字母从Z到A)错误就把他们交换过来。走访元素的工作是重复地进行直到没有相邻元素需要交换,也就是说该元素列已经排序完成。这个算法的名字由来是因为越小 阅读全文
posted @ 2022-06-25 17:35
this毛豆
阅读(27)
评论(0)
推荐(0)
摘要:
顺序排序思想:从左到右依次排序数组,依次拿当前元素和其后的所有元素作比较,根据设定做升序或降序排序。 1 /** 2 * C data structure sequence sort example. 3 * 4 * License - MIT. 5 */ 6 7 #include <stdio.h 阅读全文
posted @ 2022-06-25 17:29
this毛豆
阅读(82)
评论(0)
推荐(0)
摘要:
二叉树(Binary tree)是树形结构的一个重要类型。许多实际问题抽象出来的数据结构往往是二叉树形式,即使是一般的树也能简单地转换为二叉树,而且二叉树的存储结构及其算法都较为简单,因此二叉树显得特别重要。二叉树特点是每个节点最多只能有两棵子树,且有左右之分。 binary-tree.c 1 /* 阅读全文
posted @ 2022-06-25 16:05
this毛豆
阅读(41)
评论(0)
推荐(0)
摘要:
链式队列,使用链表实现的队列存储结构,链式队列的实现思想同顺序队列类似,只需创建两个指针(命名为 top 和 rear)分别指向链表中队列的队头元素和队尾元素。 linked-queue.c 1 /** 2 * C data structure linked queue example. 3 * 4 阅读全文
posted @ 2022-06-25 15:55
this毛豆
阅读(52)
评论(0)
推荐(0)
摘要:
顺序队列是队列的顺序存储结构,顺序队列实际上是运算受限的顺序表。和顺序表一样,顺序队列用一个向量空间来存放当前队列中的元素。由于队列的队头和队尾的位置是变化的,设置两个指针front和rear分别指示队头元素和队尾元素在向量空间中的位置,它们的初值在队列初始化时均应设置为0。 sequence-qu 阅读全文
posted @ 2022-06-25 15:45
this毛豆
阅读(54)
评论(0)
推荐(0)
摘要:
链式栈是一种数据存储结构,可以通过单链表的方式来实现,使用链式栈的优点在于它能够克服用数组实现的顺序栈空间利用率不高的特点,但是需要为每个栈元素分配额外的指针空间用来存放指针域。 linked-stack.c 1 /** 2 * C data structure linked stack examp 阅读全文
posted @ 2022-06-25 15:24
this毛豆
阅读(40)
评论(0)
推荐(0)
摘要:
顺序栈是栈的顺序实现。顺序栈是指利用顺序存储结构实现的栈。采用地址连续的存储空间(数组)依次存储栈中数据元素,由于入栈和出栈运算都是在栈顶进行,而栈底位置是固定不变的,可以将栈底位置设置在数组空间的起始处;栈顶位置是随入栈和出栈操作而变化的,故需用一个整型变量top来记录当前栈顶元素在数组中的位置。 阅读全文
posted @ 2022-06-25 15:17
this毛豆
阅读(167)
评论(0)
推荐(0)
摘要:
这里的内核链表指Linux中实现的一种特殊的双向链表,区别于传统的双向链表包含数据,内核链表结构本身不包含数据,类比于卡车和货物,内核链表是卡车,数据是货物,两者之间联系通过container_of()函数进行映射,内核链表作为一个独立的成员包含在包含数据的结构体中,对数据的操作都是操作结构体中的内 阅读全文
posted @ 2022-06-25 15:02
this毛豆
阅读(171)
评论(0)
推荐(0)
摘要:
双向链表也叫双链表,是链表的一种,它的每个数据结点中都有两个指针,分别指向直接后继和直接前驱。所以,从双向链表中的任意一个结点开始,都可以很方便地访问它的前驱结点和后继结点。一般我们都构造双向循环链表。 代码如下: double-list.c 1 /** 2 * C data structure d 阅读全文
posted @ 2022-06-25 14:25
this毛豆
阅读(44)
评论(0)
推荐(0)

浙公网安备 33010602011771号