数据结构学习笔记
数据结构
cwh_Blog
这个作者很懒,什么都没留下…
展开
-
遍历
#include<iostream> using namespace std; typedef struct Tree { char date; Tree* left; Tree* right; }*Btree; void creat_tree(Btree &T) {// 树的创建 char ch; cin >> ch; if (ch == '#') { T = NULL; } else { T = new Tree; T->d原创 2020-11-03 15:03:31 · 119 阅读 · 0 评论 -
车辆渡江问题
6)某汽车轮渡口,过江渡船每次能载10辆车过江,过江车辆分为客车类和货车类,上渡船有如下规定:同类车先上船,客车先于货车上船,且每上4辆客车才允许上一辆货车,若等待的客车不足4辆,则以或车代替,若无货车等待,允许客车都上船。使设计算法模拟以上渡口管理。 #include<iostream> using namespace std; typedef struct Queue { //int date; Queue* next; }*L_Queue; void menu() { cout &l原创 2020-10-27 11:55:28 · 3091 阅读 · 0 评论 -
树——二叉树第一课
树的性质 性质一: 非空树的结点总数等于树中所有结点的度之和加一。 性质二: 度为K的非空树的第i层最多有K^i(i-1)个结点。 性质三: 深度为h的K二叉树最多有(K^h-1)/(K-1)个结点 性质四: 具有n个结点的K叉树的最小深度为log(n(k-1)+1)。 二叉树的性质 性质一: 具有n个结点的非空二叉树仅有n-1个分支 性质二: 非空二叉树的第i层最多有2^(i-1)个结点;1,2,4,8,16 ………… 性质三: 深度为h的非空二叉树最多有2^h-1个结点 性质四: 在任意非空二叉树中,若原创 2020-10-20 11:09:37 · 483 阅读 · 0 评论 -
判断一个链表是否有环采用快慢指针
判断给定的链表中是否有环 扩展: 你能给出O(1)空间复杂度的解法么? //快慢指针能够相遇则说明有环 #include <stdbool.h> bool hasCycle(struct ListNode* head ) { if(head==NULL)return false; // write code here struct ListNode *p=head; while(p!=NULL&&p->next!=NULL) {原创 2020-10-17 14:54:17 · 184 阅读 · 0 评论 -
数据结构与算法堆栈实验(C++)
输入一批整形数据,建立一个顺序栈,实现顺序栈的进栈,出栈并打印进栈、出栈前后的顺序栈。 2) 利用顺序栈实现数制的转换。 3) 编写主函数,调试上述算法。 #include<iostream> using namespace std; int push_stack(int *a,int &top,int n)//入栈函数 { a[top++]=n; return 0; } int pop_stack(int *a,int &top)//出栈函数 { int x=a[to.原创 2020-10-17 14:33:57 · 457 阅读 · 0 评论