随笔分类 -  数据结构c语言

摘要:给定一系列整型关键字和素数P,用除留余数法定义的散列函数H(Key)=Key将关键字映射到长度为P的散列表中。用线性探测法解决冲突。 输入格式: 输入第一行首先给出两个正整数N(≤1000)和P(≥N的最小素数),分别为待插入的关键字总数、以及散列表的长度。第二行给出N个整型关键字。数字间以空格分隔 阅读全文
posted @ 2022-12-15 07:40 noob-lian 阅读(111) 评论(0) 推荐(0) 编辑
摘要:后序非递归遍历,需要加标记,还需要对有右子树的节点进行两次入栈操作,这是不同的 void InorderTraversal(BinTree BT) { if ( !BT ) return; BinTree tt = BT; Stack s = CreateStack(); while ( tt || 阅读全文
posted @ 2022-11-02 00:27 noob-lian 阅读(21) 评论(0) 推荐(0) 编辑
摘要:题目: 样例输入: 8 1 - - - 0 - 2 7 - - - - 5 - 4 6 样例输出:1 4 5 想法:记录每个节点的左右节点,在操作 tuple<int, int> das[100]; //储存节点为i的左节点,右节点 bool vis1[20];//判断某个节点是否有father,没 阅读全文
posted @ 2022-11-01 01:50 noob-lian 阅读(65) 评论(0) 推荐(0) 编辑
摘要:int n; array<int, 100>sav; //后序遍历 :左 右 根 // void f(int m) { if ( m > n ) return; f(2 * m);//先读入左节点 f((2 * m + 1));//读入右节点 cin >>sav[m];//读入根节点 } int m 阅读全文
posted @ 2022-11-01 01:40 noob-lian 阅读(13) 评论(0) 推荐(0) 编辑
摘要:核心:完全二叉树第i个节点的左节点,对应的下标一定是2*i,右节点一定是2*i+1。 用num表示这个节点应该有的下标(虽然不用数组储存,以1开始),如果以构建完全二叉树的方式去构建树。若建树过程中,num大于节点数n,则不是完全二叉搜索树,否则是; 搜索树的构建: int n; int cnt = 阅读全文
posted @ 2022-11-01 01:35 noob-lian 阅读(55) 评论(0) 推荐(0) 编辑

Language:
点击右上角即可分享
微信分享提示