- 博客(8)
- 收藏
- 关注
原创 顺序栈与链栈
/元素从栈顶蹦出,栈顶指针下移(先S.top--,再*S.top = e)*S.top++=e;//插入新的元素,栈顶指针上移(先*S.top = e,再S.top++)顺序栈:进出栈:O(1) 清空栈:O(1)链式栈:进出栈:O(1)清空栈:O(n)(1)链栈中指针的方向是从栈顶指向栈底。以下操作中S.top均指向的是。链栈中一般不设头结点。
2023-09-22 21:05:18
106
原创 循环队列随笔
1.定义结构体SqQueue Q,Q中有rear,front两个指针(rear指向队尾,用来进:Q.rear = (Q.rear + 1)%MAXSIZE;front指向队首,用来出:Q.front = (Q.front +1 %MAXSIZE 和一个储存队列值的数组data[MAXSIZE];3.判断循环队列是否满了,用(Q.rear + 1)%MAXSIZE == Q.front;2.判断循环队列是否为空,用Q.rear == Q.front;深知自己的代码水平依托答辩,欢迎指错!
2023-09-22 18:47:28
55
1
原创 数据结构双向链表的插入
那么就可以把过程简化为:先搞定s的后继(因为p是s的后继,它是确定的,s喜欢已经确定了的东西),再搞定s的前驱(就是p->prior),接着搞定前结点的后继,最后搞定后结点的前驱(p一定要是最后动的!那就是:先搞定s的前驱(因为p是s的前驱),再搞定s的后继(就是p->next),接着搞定后结点的前驱,最后搞定前结点的后继(前结点是p,要最后搞)。想了好久哇终于想明白了!首先,分为两种情况。
2023-09-20 15:00:55
187
1
原创 Python笔记第三章
2.元组支持使用下标访问特定位置的元素,也支持双向索引,但是元组是不可变序列,不能对元组某一个索引值重新赋值,如x[1]=2。同样,元组也没有remove()和pop()方法,不支持对猿族元素进行del操作,不能从元组中删除元素。访问时只能从前往后访问,没有任何方法可以再次访问已访问过的元素,也不支持使用下标访问其中的元素。当所有元素访问结束之后,如果需要重新访问其中元素,必须重现创建该生成器对象,enumerate,filter,map,zip等其它迭代器对象也具有这样的特点。
2023-09-19 12:47:18
493
原创 python学习笔记第一周
filter()函数,注意python3返回值是一个迭代,自我认为map和filter函数的用法和作用差不多!map对象属于迭代器类型,其中每个元素是原可迭代对象中元素经过func处理后的结果,不对原可迭代做任何修改。isinstance()函数。
2023-09-18 23:17:02
43
原创 山东大学可达鸭杯程序设计比赛J题题解
这道题刚开始做的时候就只想到了用map记录频率,因为自己太菜了所以写了几行后觉得实现不了就放弃了,后续看了大佬的方法豁然开朗,本质就是用两个map储存:一个用来存储上下两面数字出现的次数,另一个用来存储上面的数字的出现次数,因为是要将牌翻到上面,必然涉及到上面数字出现次数的问题,故要建立map单独存储。接下来n行,每行两个非负整数ai,bi,表示每张牌上写的两个数字,aii对应朝上的一面,bi对应朝下的一面。注意:在翻牌的时候,你不能把牌扔掉,不能偷偷把别的牌放进来,也不能用笔涂改牌上面的数字。
2023-04-10 11:13:06
270
1
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人