看大话数据结构(2.5h)
循环队列这个操作比较实用,而且简单易懂,弥补了顺序队列空间浪费的缺点,一个简单的取余就达到了循环使用空间的效果,可以说是很妙了,这玩意不学大概是想不到的。
int enQueue(int *a,int front,int rear,int data){
//添加判断语句,如果rear超过max,则直接将其从a[0]重新开始存储,如果rear+1和front重合,则表示数组已满
if ((rear+1)%max==front) {
printf("空间已满");
return rear;
}
a[rear%max]=data;
rear++;
return rear;
}
int deQueue(int *a,int front,int rear){
//如果front==rear,表示队列为空
if(front==rear%max) {
printf("队列为空");
return front;
}
printf("%d ",a[front]);
//front不再直接 +1,而是+1后同max进行比较,如果=max,则直接跳转到 a[0]
front=(front+1)%max;
return front;
}
敲一个简单的迷宫回顾一下搜索(1h)
敲完就丢了,代码并没有保存,不过也没啥好保存的
周测(2h)
过了三道题,排名靠后,第四道没做出来,时间超限
继续做第四题(1h)
虽然换了两种思路做,但是殊途同归啊,难受
观察新开的题组(2h)
好家伙,并查集,二叉树,快排,就快排我现在能整一题出来,其他的都得学。
于是开始看有关树的视频,先把树解决,再学并查集。
今天答辩答得稀烂,什么都没准备,直接冲上去白给了。学得确实是不扎实,也没复习过,题目过了就没管了,bfs,dfs,链表这些,都记不得,不照着模板就敲不出来,太捞了。下次答辩得准备一下,平时也要多回顾以前学的,不然忘掉了等于白学。
总计8.5h
明日计划
冲二叉树,尝试过一两题。