数据结构
文章平均质量分 84
kkzz1x
真.新手起步
Java + CPP + Rust(新人),计算机科学热爱者
展开
-
数据结构应试手册3.0
《数据结构应试手册》本手册(一座屎山)仅限用于个人应试author:kkzzjxdate:2020/7/3文章目录《数据结构应试手册》重点!!!2.二叉树的递归、非递归遍历,层序遍历定义递归遍历先序、中序非递归后序遍历非递归1后序遍历非递归2层序遍历层序生成二叉树先序建立二叉树3.二叉搜索树链表链表顺序表栈和队列理论考试顺序队列链队列队列:判断循环队列是否为空串KMP算法O(n+m)树理论考试总结二叉树建立,遍历二叉搜索树哈夫曼树编码译码习题求哈夫曼树带权路径长度(利用了堆)统计二叉树中的叶子结原创 2020-08-24 22:37:15 · 250 阅读 · 0 评论 -
XDOJ---树
统计二叉树中的叶子结点数时间限制: 1 秒内存限制: 256KB问题描述建立二叉链表,统计二叉树中的叶子结点数并输出。输入说明按照完全二叉树的形式输入二叉树的各结点数据(字符),其中虚结点用’@‘表示。输入以’#'结束。输出说明输出叶子结点的个数及具体值。第一行为叶子结点的数据值,各数据用空格分隔,第二行为叶子结点的个数。输入样例abc@@de#输出样例b d e3第一次发现这oj还管超时的,大概叶子的递归太慢了吧(但是上面这题好好的) 这题既建了链树,又递归???先把超时代原创 2020-06-24 16:02:37 · 940 阅读 · 0 评论 -
数据结构:集合(并查集)
//集合#include <stdio.h>#define maxn 1000int set[maxn]; //数组存集合int Find(int s[], int x) //树根用负数存-1,-2,-3...{ while (s[x] >= 0) //数组s存放的是parent x = s[x]; return x;}void Union(int s[], int Root1, int Root2) //此处root不是指存放负数的那个标原创 2020-06-10 00:43:35 · 298 阅读 · 0 评论 -
数据结构:堆
写了一下最小堆#define maxdata 10000#define mindata -1#include <stdio.h>#include <stdlib.h>using namespace std;struct HNode{ int *data; //存元素的数组 int size; //当前元素个数 int capacity; //堆的最大容量};typedef struct HNode *Heap;typedef原创 2020-06-10 00:08:33 · 152 阅读 · 0 评论 -
数据结构:线索二叉树
Threaded Binary Tree二叉树的中序线索化很显然前序和后续线索化也是差不多的~~~就是顺序变了一下#define datatype int;typedef struct node *ThreadBintree;struct node{ int ltag,rtag; datatype data; ThreadBintree left,right;};InThre...原创 2020-04-30 18:37:24 · 499 阅读 · 0 评论 -
KMP算法
我这里直接用了c++的string类,一些介绍看前面的博文预备知识: string类输入输出#include<string>#include<iostream>using namespace std;int main(){ string s1,s2; getline(cin,s1); getline(cin,s2); printf("%s\n",s1....原创 2020-04-28 15:57:03 · 171 阅读 · 0 评论 -
栈的应用--迷宫
#include<stdio.h>#include<stack>#include<stdlib.h>#define MAXMATRIXSIZE 100#define MAXSTACKSIZE 100using namespace std;stack <struct MazePosition> s;struct offsets{ sho...原创 2020-04-26 18:22:23 · 154 阅读 · 0 评论 -
C++容器vector,list,deque
便于在数据结构题目中偷个懒??(还是好好写ADT⑧)vector vector与数组类似,拥有一段连续的内存空间,并且起始地址不变。便于随机访问,时间复杂度为O(1),但因为内存空间是连续的,所以在进入插入和删除操作时,会造成内存块的拷贝,时间复杂度为O(n)。此外,当数组内存空间不足,会采取扩容,通过重新申请一块更大的内存空间进行内存拷贝。List list底层是由双向链表实现...原创 2020-03-08 17:19:41 · 226 阅读 · 0 评论 -
栈和队列练习
栈的练习T11配对设单链表中原创 2020-03-08 11:03:08 · 953 阅读 · 0 评论 -
线性表练习
拖延症更新中T17 顺序表 一个辅助结点 ,实现向右循环k位的运算//T17 #include<stdio.h>#include<stdlib.h>#define MAXSIZE 100struct sqList{ int num[MAXSIZE]; int last;};typedef struct sqList *list;list creat...原创 2020-03-02 20:29:08 · 351 阅读 · 0 评论 -
数据结构系列合集
声明,练习是2020春XDU我的数据结构作业 程序保证做到可以跑 主要给我自己复习 可以参考 但不要完整抄去交作业 3Q 非常欢迎私信交流更简单的做法...原创 2020-03-01 23:04:24 · 536 阅读 · 0 评论 -
大O表示法
一般法则1.for循环 :至多是该for循环内语句的运行时间×迭代次数嵌套for同理~2.顺序语句将各个语句运行时间求和T1(N)+T2(N)=max(O(f(N),O(g(N)))(选其中的最大值)3.if/else运行时间小于判断和条件语句中较长者对数情况如果一个算法用常数时间O1 将问题的大小削减为其一部分(通常为1/2),那么该算法就是O(log N)的—eg. 分治算...原创 2020-02-20 15:31:03 · 302 阅读 · 0 评论 -
数据结构:图(建立及遍历)
图的创建图的邻接矩阵存储#define INFINITY 65535/*邻接矩阵表示图*//*图结点的定义*/ typedef int WeightType; //抽象一下,WeightType可取各种类型,DataType什么也是一样的 typedef struct GNode *PtrToNode;struct GNode{int Nv;//顶点数 int Ne;//边数W...原创 2020-01-13 23:21:39 · 561 阅读 · 0 评论 -
数据结构:堆,哈夫曼树
细节待补充#include<stdio.h>#define MAXDATA 100000typedef struct node* MaxHeap;struct node{ int *data; int size; int capacity;}; MaxHeap creat(int maxsize){ MaxHeap h=(MaxHeap)ma lloc(str...原创 2020-01-12 23:00:09 · 153 阅读 · 0 评论 -
数据结构:二叉树和二叉搜索树
二叉树创建(层序)与层序有关的要用到队列,因此创建一个队列Bintree creat()//二叉树层序创建(想用C++STL库的,到时候改成new){ int data; BinTree BT,T; scanf("%d",&data); if(data!=0) { BT=(BinTree)malloc(sizeof(struct TNode)); BT->...原创 2020-01-12 11:23:46 · 223 阅读 · 0 评论 -
数据结构:队列
Queue操作集:创建,进队,出队,判断是否满,是否空结构:数据,front 队列头,rear队列尾(头尾指针,删除一个元素时front+1,加入一个元素时rear+1),最大容量思考Q:如何处理队列假溢出?线性?? 想象成环状的数组利用取模操作rear%数组长度,front%数组长度Q:如何区分队列有没有满?方法1:记录当前元素个数 size方法2:用flag记录最后一个元素...原创 2019-12-21 20:52:42 · 151 阅读 · 0 评论 -
数据结构:堆栈
栈的顺序存储实现包含:存数据的数组,栈顶“指针”(存放栈顶的位置,是数组下标)0-maxsize-1最大容量 maxsize操作:push 入栈 pop出栈//堆栈的顺序实现typedef struct SNode *PtrToNode;struct SNode{ int data[MAXSIZE]; int top; int maxsize;}; typedef str...原创 2019-12-20 23:17:44 · 169 阅读 · 0 评论 -
数据结构:线性表
好久没学了QAQ 连链表都要忘记了做一个链表复习集合吧><求单链表结点的阶乘和本题要求实现一个函数,求单链表L结点的阶乘和。这里默认所有结点的值非负,且题目保证结果在int范围内。输入样例:35 3 6输出样例:846#include <stdio.h>#include <stdlib.h>typedef struct Node *Ptr...原创 2019-12-17 17:05:47 · 262 阅读 · 2 评论