第三章学习小结

一.   本章内容小结

  1. 栈和队列是操作受限的线性表,其区别是运算规则不同。
  2. 栈是后进先出,队列是先进先出。
  3. 在链栈中,以链表的头部作为栈顶是最方便的,不需要附加一个头结点。
  4. typedef struct b{

int data;

struct b*next;

          }A;

          定义结构体名字是为了递归定义,若不用递归定义可直接写int*next

       5.使用递归的情况:定义是递归的,数据结构是递归的,问题的解法是递归的。

          “分治法”求解递归问题算法的一般形式为:

           void p(参数表)

           {

      If(递归结束条件成立)可直接求解;

else p(较小的参数);

}

  1.  队列:队空的条件:Q.front==Q.rear

          队满的条件:(Q.rear+1)%MAXQSIZE==Q.front

          入队:Q.data[Q.rear]=e,Q.rear=(?)%?

          出队:e=Q.data[Q.front],Q.front=(?)%?

  1. 入队操作是指在队尾插入一个新的元素

出队操作是将队头元素删除

二.   完成作业或解决困难时的经验分享

作业的括号匹配一开始不知道要怎么判断其是否正确,而且对switch还不能熟练运用,然后是部分正确,不知道错在了哪里。

三.   分享的资料

  1. 学计算机的同门
  2. 课本
  3. 博客

四.   存在的困难

       不能熟练地写代码,解题目时总是要花费很多时间去翻C++的书,可能是因为基础不够扎实,在编写代码时会出现错误。

五.   目标

  1. 达到了,花了时间去看代码
  2. 坚持每周打代码,做有关练习。

posted on 2019-03-31 21:06  刘磊w  阅读(118)  评论(2编辑  收藏  举报