排序(Sort)是将无序的记录序列(或称文件)调整成有序的序列。 10.1排序分类 按照排序的稳定性可以将排序分为稳定排序和非稳定排序。按照排序的存储可分为内排序和外排序。 1、稳…
Read More分类: 数据结构与算法
《数据结构与算法》第9章 查找 (C语言)
所谓“查找”记为在一个含有众多的数据元素(或记录)的查找表中找出某个“特定的”数据,即在给定信息集上寻找特定信息元素的过程。 为了便于讨论,必须给出这个“特定的”词的确切含义。首先…
Read More《数据结构与算法》第8章 树 (C语言)
8.1树的概念 树(tree)是n(n>=0)个节点的有限集合T,它满足两个条件: 1)有且仅有一个特定的称为根(root)的节点; 2)其余的节点可以分为m(m>=0…
Read More《数据结构与算法》第7章 两个队列实现一个栈 (C语言)
前一节我们讲解了两个栈实现一个队列,现在我们用两个队列实现一个栈。 关于栈和队列的特点在前一节我们已经讲解过了,现在我们直接看用两个队列实现栈的出入。 7.1入栈 入栈很简单,只需…
Read More《数据结构与算法》第6章 两个栈实现队列 (C语言)
在讲解本节内容之前,我们先来回顾栈和队列的特点。 栈的特点是先进后出,例如,把序列1,2,3,4,存入栈中。 入栈:1先入,4最后入,最终1在栈底,而4位于栈顶。 出栈:栈顶先出,…
Read More《数据结构与算法》第5章 链表反转【有头结点】(C语言)
5 链表反转【有头结点】 此文是在前一文的基础上改进,两者区别在于是否有头结点,为何必须有头结点,笔者在《表》那一章已经说明了,此文是在上一节进行了改进。 【题目描述】 题目:输入…
Read More《数据结构与算法》第5章 链表反转【无头结点】(C语言)
5 链表反转【无头结点】 【题目描述】 题目:输入一个链表的头结点,反转该链表,并返回反转后链表的头结点。 typedef int data_t; typedef struct l…
Read More《数据结构与算法》第4章 队列(C语言)
4.1队列的概述 队列(queue)是一种先进先出(First In First Out , FIFO)的线性表,它只允许在表的一端插入元素,另一端删除元素。其中,允许插入的一端称…
Read More《数据结构与算法》第3章 栈(C语言)
3.1 栈的概述 同顺序表和链表一样,栈也是用来存储逻辑关系为 "一对一" 数据的线性存储结构。 栈存储结构与之前所学的线性存储结构有所差异,这缘于栈对数据 &…
Read More《数据结构与算法》第2章 表(C语言)
2.1线性表概述 表也可以说是线性表,名为线性存储结构。使用线性表存储数据的方式可以这样理解,即“把所有数据用一根线儿串起来,再存储到物理空间中”。 如上图所示,这是一组具有“一对…
Read More