- 博客(8)
- 收藏
- 关注
原创 中缀表达式转逆波兰表达式
用一个temporary数组作为两个操作数的拼接,因为部分转换完的逆波兰表达式会当作一个单独的操作数,所以拼接也是按。的顺序进行运算,每次运算完的话把部分已经完 成转换的表达式当做新的操作树入栈。该运算符的其他运算符先出栈运算,如果期 间遇到'('时停止。3.遇到')',一直出栈运算符进行运算直至遇到'('为止。2.遇到运算符,把当前栈中优先级。左操作数-右操作数-运算符进行拼接。左操作数-右操作数-运算符。
2024-10-24 19:02:56
231
原创 设计一个空间可重复使用的循环队列
1.初始时队列为空。2.入队时,允许增加队列存储空间。3.出队后,出队元素所占用的空间可以重复使用,即整个队列的存储空间只增不减。1.用链式存储结构实现初始队列状态插入第一个结点的队列状态判断队空的条件:front==rear;判断队满的条件:rear->next==front;
2024-10-23 18:51:30
265
原创 顺序循环队列的判断条件
1.因为入队是先存元素再移动,所以队尾指针指向的是队尾元素的下一个位置,。如果队列为空的话,队头指针一定是在队尾指针上面,所以如果队尾指针+1为队头指针的话就代表队列为空。1.队尾指针是先移动再存入元素,所以得用判断队尾指针+1是否等于队头指针作为条件。1.因为rear指向的是队尾元素的下一个位置,且因为队头指针删除元素是。1.因为这种情况队尾指针是先移动再存入元素,所以初始化是n-1,因为。1.因为这种情况队尾指针是先存入元素再移动,所以初始化队尾指针是0。,所以队尾指针会等于队头指针。
2024-10-17 17:45:39
325
原创 计算机网络1.1.7应用题
答:因为(10^6/x)*100已经是把每个分组都加入了100字节的开销,所以x是为整个分组的数据大小,是包括了(100字节用于头和成帧+要传输的数据)。注意这里为什么不是(10^6/x)*100+a+100,不是x为数据大小,还要加上100个字节的开销吗?我们要计算开销,就要知道这个数据被拆分成了多少个分组,目前分组的数目和分组的数据大小我们都不知道。接下来我们知道一个分组的字节丢失了,所以要把那个丢失字节的分组丢弃,所以开销+丢失就为。我们设x为每个分组的数据大小,则分组数就等于10^6/x。
2024-10-02 15:43:46
166
原创 线性表(顺序存储结构)
动态顺序表typedef struct AutoLinklist//动态静态分配的顺序表int * data;int lenght;静态顺序表typedef struct StaticLinklist//静态分配的顺序表int lenght;
2024-09-22 17:31:38
243
原创 链表插入结点涉及到的地址问题
可以推断出只要遍历器指向了NULL之后就与尾结点的下一个地址没有任何关系了,即使后面再申请一块空间给尾结点的下一个地址,遍历器指向的也是NULL;所以要插入结点是得遍历到尾结点,然后利用->next再插入,不可遍历到尾结点后面的地址再试图用指针修改,这样容易出现错误。head->headnode的地址 = 7625040。这时ergodic与headnode指向的地址是相同的。head->ergodic的地址 = 7625040。head->headnode的地址=15861000。
2024-09-07 22:41:04
231
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人