• 数据结构期末大题.复习


    一.静态链表的操作

    例 :序列(a,b,c,d,e)已存在静态链表如下图a,头指针指向1号结点。请完成:

      1.在静态链表中标出此序列的逻辑关系。

      2.画出依次执行了b前插入f,删除e,c后插入g操作后的新的静态链表图b。

    1

     

    1

     

    2

    c

    2

     

    3

    e

    3

     

    4

    a

    4

     

    5

    d

    5

     

    6

    b

    6

     

    7

     

    7

     

     

    图a

     

    图b

    二.队列的操作

    例:(5分)用下标从0到4的一维数组存储一个循环队列,目前其中有两个元素A、B,状态如图(a)。如果此后有17个数据元素C、D、……P、Q、R、S依次进队列,其间又有16个元素先后出队列,请在图(b)中填写队列最后的状态,包括其中的元素(2分)和指针的位置(3分)。

    rear→

    R

     

    R

     

    B

    Q

    front→

    Q

    front→

    A

     P

     

     

    O

    rear→

     

    S

     

    S

    (a)

    进队列后的元素

    (b)

    特殊情况处理:1、队列中包含正确元素(QRS)得2分。 2、指针相对于元素位置错1个扣1分。 3、元素和指针整体错位扣1分。

    三.计算地址

    例:(5分)在一个C语言程序中,有结构类型STUDENT的定义和结构数组allstudents的声明如下:

    struct STUDENT

    {

      char name[8];

      int number;

    }

    STUDENT allstudents[10][50];

        allstudents是一个二维数组,它的每个元素都是包含name和number的结构类型。已知在C语言中,二维数组使用以行序为主序的存储结构,char类型占用1字节,int类型占用4字节。

        假定allstudents在内存中的起始存储位置是2000,请写出计算allstudents[i][j]的存储位置的算式(3分),并计算allstudents[3][5]的存储位置(2分)。

    allstudents[i][j]的存储位置 = 2000 + (I * 50 + j) * 12

    allstudents[3][5]的存储位置 = 2000 + (3 * 50 + 5) * 12 = 3860

    特殊情况处理:1、下标从1开始扣1分。 2int类型错为1字节扣1分。

    四.矩阵

    例:已知一个稀疏矩阵如下:

    1.给出它的三元组顺序表表示

    2. 给出它逆置后的三元组顺序表

    3.给出它的十字链表表示

    0     2     0     0     0     0

    1     0     0     0     0     0

    0     3     0     0     0     0

    0     0     0     0     4     0

    0     5     0     0     0     6

     

     

    i

    j

    v

    i

    j

    v

            A                                                    B

    五.树(“中序 后序 先序”)

    六.哈夫曼树(带权路径 WPL)

    七.哈希函数

    八.排序

  • 相关阅读:
    『中级篇』docker导学(一)
    计算机或许已经烂大街了,女生学计算机没出路吗?
    「初级篇」跟我一起学docker(17)--多节点mesos集群
    「初级篇」跟我一起学docker(18)--持续集成(初级终结篇)
    「初级篇」跟我一起学docker(16)--单节点mesos集群
    QT socket 多线程管理
    mysql数据库引擎 MyISAM和 InnoDB区别
    sql 删除表格delete drop truncate 区别(转)
    按层次遍历二叉树
    php基础排序算法 冒泡排序 选择排序 插入排序 归并排序 快速排序
  • 原文地址:https://www.cnblogs.com/loveincode/p/3749776.html
Copyright © 2020-2023  润新知