zoukankan      html  css  js  c++  java
  • 第三章学习小结

    .第三章学习了栈和队列,有了第二章对线性表的学习,已经了解学习的一个思维过程,在这里分享一下。例如学习栈,首先要了解它的存取特点,然后是学习它的ADT,然后从具体的方面学习,分别从两种不同的存储结构来探讨它具体操作的实现。这个是整个数据结构学习的基本思路,掌握了思路,我觉得对于理清楚整一本书很有帮助。

    2.在对于栈的学习,课本上给出的案例是括号匹配问题,还有简单的四则运算,在解决这两个问题的时候,要考虑到数据是先进后出,才想到采用栈结构。并且在打代码之前,一定要加以详细的注释,通常会有一些很小的bug,看了老半天看不出来。解题先用文字大概将算法写出来,再慢慢完善算法里所欠缺的。

    3.对于队列的学习,个人觉得较为重要的一点是要对队列是否带头节点来操作,认真分析,这样能够对整个队列掌握得更透彻,这里分享一下老师的代码

    链式队列的实现:

    一、类型定义
    typedef struct node{
    ElemType data;
    struct node *next;
    }LNode;

    typedef struct{
    LNode *front;
    LNode *rear;
    }LinkQueue;

    二、各种操作的实现分析

    1、初始化
    LinkQueue Q;
    不带头:Q.front = NULL; Q.rear = NULL;
    带头:Q.front = new LNode; Q.front->next = NULL; Q.rear = Q.front;

    2、判断队空
    不带头:Q.front==NULL 或者:Q.rear==NULL
    带头:Q.front->next==NULL 或者:Q.front==Q.rear

    3、判断队满()//由new申请空间后判断,故无需定义该函数

    4、在队头入队
    不带头空队列:p = new LNode;
    cin >> p->data;
    p->next = NULL;
    Q.rear = p; 
    Q.front = Q.rear; //本情况独有
    不带头1个结点:p = new LNode;
    cin >> p->data;
    p->next = NULL;
    Q.rear->next = p; //本情况独有
    Q.rear = p;
    不带头2个结点://同上

    带头空队列:p = new LNode;
    cin >> p->data;
    p->next = NULL;
    Q.rear->next = p;
    Q.rear = p;
    带头1个结点://同上
    带头2个结点://同上

    5、在队头出队
    不带头1个结点:p = Q.front;
    Q.front = Q.front->next;//Q.front被赋值为NULL
    e = p->data;
    delete p;
    Q.rear = NULL; //本情况独有,将rear恢复到初始状态

    不带头2个结点:p = Q.front;
    Q.front = Q.front->next;
    e = p->data;
    delete p;

    带头1个结点:p = Q.front->next;
    e = p->data;
    Q.front->next = p->next;
    delete p;
    Q.rear = Q.front; //本情况独有,将rear恢复到初始状态
    //上面语句的执行条件:空对列
    带头2个结点:p = Q.front->next;
    Q.front->next = p->next; //Q.front->next被赋值为NULL
    e = p->data;
    delete p;

    4.遇到问题都是一些很细微的问题,例如对string的用法不太了解,在定义数组的数组的时候,要输入变量值才能定义

    5.接下来多看源码,不懂多百度多问

  • 相关阅读:
    java将文件夹md5为名的图片与数据库查询对应md5后导入相应图片到某分类下
    java 导入图片时忘了导入诊断报告,查询报告并将缺失的报告插入对应分类图片中
    安装nginx
    python,opencv,8位图转24位图
    python 笔记
    python,opencv图像增强
    问卷星的使用教程
    考研数据结构复习随笔-基本概念(一)
    按字寻址 按字节寻址
    在数据结构中用顺序栈解决括号匹配问题
  • 原文地址:https://www.cnblogs.com/liusiling/p/10625272.html
Copyright © 2011-2022 走看看