
C语言
一霎永恒
巨白
展开
-
商品货架管理
4.商品货架管理 需求分析: 商品货架可以看为栈,在每次上货时,需翻转货架,使新商品在栈的底部,实现进货,出售商品,展示货架上商品的操作 概要设计: 抽象数据结构: ADT{ InitStack(SqStack& S) //初始化栈S Push(SqStack& S, ElemType e) //入栈 Pop(SqStack& S, ElemType& e) //出栈 Purchase_Product_noEmpty //货架不为空时进货 Purchase_原创 2021-05-17 17:31:08 · 4876 阅读 · 1 评论 -
数制转化问题
3.十进制转八进制 需求分析: 输入十进制数据将其转化为八进制 思想:利用栈实现,每次除八取模的余数放入栈中,再依次出栈,得到的结果即为转化后的八进制数 概要设计: 抽象数据结构: ADT{ InitStack(SqStack& S) //初始化栈S Push(SqStack& S, ElemType e) //入栈 Pop(SqStack& S, ElemType& e) //出栈 DectoOct(int num,SqStack &S,int&a原创 2021-05-17 17:28:50 · 449 阅读 · 0 评论 -
循环顺序队列
2.循环顺序队列 需求分析: 创建循环顺序队列,并实现基本的相关操作 概要设计: 抽象数据结构: ADT{ InitQueue(SqCQueue &S) //初始化队列S EnQueue(SqCQueue &S, Elemtype e) //元素e入列 DeQueue(SqCQueue &S, Elemtype &e) //队首元素出列,并用e记录 Print_Number(SqCQueue S) //打印当前队列中元素总数 Print_Rear(SqCQu原创 2021-05-17 17:26:02 · 923 阅读 · 0 评论 -
顺序栈基本操作
1.顺序栈的基本操作 需求分析: 建立基本的顺序栈,并能进行基本的初始化,入栈,出栈操作。 概要设计: 抽象数据结构: ADT{ InitStack(SqStack& S) //初始化栈S Push(SqStack& S, ElemType e) //将元素e入栈 Pop(SqStack& S,ElemType &e) //栈顶元素出栈,并记录该值到e } 程序用到的函数及层次关系: main(){ Pop() InitStack() Push原创 2021-05-17 17:23:52 · 209 阅读 · 0 评论 -
整数转罗马数字
#12.整数转罗马数字 ##题目: 罗马数字包含以下七种字符: I, V, X, L,C,D 和 M。 字符 数值 I 1 V 5 X 10 L 50 C 100 D 500 M 1000 例如, 罗马数字 2 写做 II ,即为两个并列的 1原创 2021-05-14 20:54:25 · 211 阅读 · 0 评论 -
子数组异或查询
#1310.子数组异或查询 ##题目: 有一个正整数数组 arr,现给你一个对应的查询数组 queries,其中 queries[i] = [Li, Ri]。 对于每个查询 i,请你计算从 Li 到 Ri 的 XOR 值(即 arr[Li] xor arr[Li+1] xor … xor arr[Ri])作为本次查询的结果。 并返回一个包含给定查询 queries 所有原创 2021-05-13 23:02:25 · 98 阅读 · 0 评论 -
叶子相似的树
#872.叶子相似的树: 请考虑一棵二叉树上所有的叶子,这些叶子的值按从左到右的顺序排列形成一个 叶值序列 。 举个例子,如上图所示,给定一棵叶值序列为 (6, 7, 4, 9, 8) 的树。 如果有两棵二叉树的叶值序列是相同,那么我们就认为它们是 叶相似 的。 如果给定的两个根结点分别为 root1 和 root2 的树是叶相似的,则返回 true;否则返回 false 。 ##dnf法:深度搜索法 #include <原创 2021-05-13 23:01:40 · 83 阅读 · 0 评论 -
停在原地的方案数
#1269.停在原地的方案数 ##题目: 有一个长度为 arrLen 的数组,开始有一个指针在索引 0 处。 每一步操作中,你可以将指针向左或向右移动 1 步,或者停在原地(指针不能被移动到数组范围外)。 给你两个整数 steps 和 arrLen ,请你计算并返回:在恰好执行 steps 次操作以后,指针仍然指向索引 0 处的方案数。 由于答案可能会很大,请返回方案数 模 10^9 + 7 后的结果。 ##思路: 涉原创 2021-05-13 23:00:58 · 115 阅读 · 0 评论