数据结构
文章平均质量分 57
数据结构学习日记
大白菜和小白菜
这个作者很懒,什么都没留下…
展开
-
二叉树
一、二叉树概念。1、线性结构与非线性结构。 线性结构:数组、链表、栈、队列。 非线性结构: 二叉树。2、什么是二叉树? 二叉树是一种特殊的储存结构,是一种非线性的储存结构。所谓一棵树,都是有一个根节点,这个根节点也是可以用来存储数据的,二叉树结构就是把小于根节点的数据储存到根节点的左边,把大于根节点的数据储存到根节点的右边,这样就实现了检索数据时,例如,根节点是20,根左边是18,根右边是23,当我们需要寻找一个数据为23时,就不需要去根节点的左边寻找了,只需要去根节点的右边寻找即可,所谓二叉树搜索原创 2021-04-27 20:17:58 · 1367 阅读 · 0 评论 -
内核链表,链式栈,队列的学习实现
一、链表的种类。 传统链表: 单向链表、单向循环链表、双向链表、双向循环链表。 非传统链表: 内核链表。传统链表与非传统链表区别? 传统链表增删改查,都是需要自己实现。 非传统链表增删改查,都是由内核提供,都已经实现好的了,我们只需要直接调用即可。二、什么是内核链表? 内核链表与传统链表不一样,传统链表数据域与指针域都是用户自己写的,但是内核链表数据域是用户自己写的,但是指针域是内核链表已经实现好的了,用户不能修改指针域。 内核链表本身就是一条双向循环链表,头节点无效,但是与双向循环链表模型不一样。原创 2021-04-13 17:43:40 · 195 阅读 · 0 评论 -
链表初级最终总结超级无敌大总结
一、单向链表#include <stdio.h>#include <stdlib.h>#include <string.h>struct list_node{ int num; struct list_node *next;};struct list_node *init_list_head(){ struct list_node *head = NULL; head = malloc(sizeof(struct li原创 2021-04-10 11:38:32 · 144 阅读 · 0 评论 -
数据结构学习日记---双向循环链表+链表初级大总结
一、双向循环链表模型节点与双向链表一样,都是有前驱指针域和后继指针,双向循环链表最后一个节点指向头节点头节点前驱指针直线循环链表最后一个节点2..寻找最后一个节点structlist_node*p=NULL;p=head->prev;3.设计一个双向循环链表:#include <stdio.h>#include <stdlib.h>//设计节点struct list_node{ int data; struct list_nod..原创 2021-04-09 16:57:31 · 391 阅读 · 0 评论