
数据结构与算法
农民真快落
滚烫的理想主义将化作黑夜中的野火,灵魂的欲望便是命运的先知
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
【考研复习】《算法导论》第十章 基本数据结构 10.1-5 双端队列的简易实现
算法导论 deque 双端队列的实现原创 2021-12-14 13:53:22 · 769 阅读 · 0 评论 -
【数据结构学习】二叉树的C实现
功能: 遍历(先序遍历、中序遍历、后序遍历) 计算节点总数/叶子节点总数 计算二叉树的高度 运行截图: #include <stdio.h> #include <stdlib.h> /* * 功能: * 遍历(先序遍历、中序遍历、后序遍历) * 计算节点总数/叶子节点总数 * 计算二叉树的高度 */ typedef struct BTNode{ //节点数据 int Data; //左孩子 struct BTNode *LChil原创 2021-04-22 11:16:08 · 142 阅读 · 0 评论 -
【蓝桥杯备战】从零开始死磕搜索技术之全排列问题
这篇主要写一下DFS解全排列问题。 这题有两种做法,一是DFS,二是利用STL的next_permutation函数,第二种比较简单,分析一下第一种做法。 以N=3为例,结果为: 1 2 3 1 3 2 2 1 3 2 3 1 3 1 2 3 2 1 先上一下搜索结果示意图: 从图中我们可以看到,如果要用深度优先搜索来解决这个问题,当遇到相同的元素时应当避开(题目要求所产生的任一数字序列中不允许出现重复数字。) 因此,我们需要用一个chosen[i]来表示i这个值是否已经被选过。chosen[i]=1原创 2020-07-31 09:50:36 · 268 阅读 · 2 评论 -
【数据结构(C语言)第二版慕课版】HeaderList例程
这里给出【数据结构(C语言)第二版慕课版 人民邮电出版社】中P20~23中HeaderList的例程 /** *date:2020/06/07 *auther:Pan Ye cheng *title:HeaderList(带表头结点的单链表) */ #include <stdio.h> #include <malloc.h> typedef int ElemType; typedef struct node { ElemType element; struct node原创 2020-06-07 11:20:52 · 1149 阅读 · 0 评论 -
【数据结构(C语言)第二版慕课版】SingleList例程
线性表的概念 线性表指的是元素在逻辑上连续的数据结构,具体地说,除了第一个和最后一个元素,每个元素都有一个前驱和一个后继元素。 由于线性表只规定了逻辑上连续,在存储结构上没有限制,那么既可以用连续的内存进行实现,也可以用分散的内存实现。 采用连续内存实现的线性表是顺序表(Sequence List),对应课本P11~14,采用分散内存实现的线性表是链表(Linked List),对应课本P15~23。 这里给出【数据结构(C语言)第二版慕课版 人民邮电出版社】中P15~23中SingleList的例程:原创 2020-06-06 11:48:58 · 1573 阅读 · 0 评论 -
【数据结构(C语言)第二版慕课版】SeqList例程
线性表的概念 线性表指的是元素在逻辑上连续的数据结构,具体地说,除了第一个和最后一个元素,每个元素都有一个前驱和一个后继元素。 由于线性表只规定了逻辑上连续,在存储结构上没有限制,那么既可以用连续的内存进行实现,也可以用分散的内存实现。 采用连续内存实现的线性表是顺序表(Sequence List),采用分散内存实现的线性表是链表。(Linked List) 这里给出【数据结构(C语言)第二版慕课版 人民邮电出版社】中SeqList的例程: /* **Date:2020/06/04 **Author:P原创 2020-06-04 09:57:47 · 1163 阅读 · 0 评论 -
从数据结构看数组、链表
动态内存管理: 1.根据需要动态分配内存 2.整合离散内存空间 线性表: 线性表,又称线性结构,具有以下特征: 1.集合中必存在唯一的一个"第一个元素";(即数组元素a[0]) 2.集合中必存在唯一的一个"最后的元素";(即数组元素a[9]) 3.除最后元素之外,其它数据元素均有唯一的"后继"; 4.除第一元素之外,其它数据元素均有唯一的"前驱"。 举个例子来说明这个概念,C语言中的数组便是线性表...原创 2020-01-17 18:57:01 · 99 阅读 · 0 评论