小知识,大挑战!本文正在参与“程序员必备小知识”创作活动
1.1 数据结构的概念
☆考点2 数据结构的逻辑结构——【模拟题】
【解答】
数据的逻辑结构只抽象的反映数据元素之间的逻辑关系,而不管它在计算机中的存储表示形式。 因此,答案选A。
【解答】
数据结构应包含两方面的信息:一是表示数据元素的信息,二是表示各数据元素之间的前后关系。其中数据元素之间的前后关系是指数据元素的逻辑关系,而与它们在计算机中的存储位置无关。 因此,答案选A。
【解答】
数据的存储结构有顺序存储,链式存储,索引存储和散列存储。栈是一种抽象数据类型,可采用顺序存储或链式存储,是一 种逻辑结构。循环队列是用顺序表表示的队列,是一种数据结构。散列表和单链表表示一种数据结构,既描述逻辑结构, 又描述存储结构。 因此,答案选B。
【解答】
线性结构定义:如果一个非空的数据结构满足下列两个条件:1、有且只有一个根节点;2、每一个节点最多有一个前驱, 也最多有一个后继;那就可以说这个数据结构是线性结 构;线性表:线性表中数据元素之间的关系是一对一的关系,即 除了第一个和最后一个数据元素之外,其它数据元素都是首尾相接的(注意,这句话只适用大部分线性表,而不是全 部。 比如,循环链表逻辑层次上也是一种线性表(存储层次上属于链式存储,但是把最后一 个数据元素的尾指针指向了首位 结点);队列:就和排队一样,晚来的站后面,所以前面最多一个,后面最多一个;二叉树:分为根节点、左子树、右 子树,所以后继可能有两个; 栈:栈是一种特殊的线性结构,里面的方法也是上面最多一个,下面最多一个。 综上所述:根据线性结构和二叉树的定义可以知道:二叉树不是线性结构。 因此,答案选C。
【解答】
数组属于线性结构,A,B,C 选项也都属于线性结构,而 D 项中树属于非线性结构。 因此,答案选D。
【解答】
树具有以下的特点: 1.每个节点有零个或多个子节点; 2.没有父节点的节点称为根节点; 3.每一个非根节点有且只有一个父节点; 4.除了根节点外,每个子节点可以分为多个不相 交的子树。
查找表分为:
1.静态查找表:a.以顺序表或线性链表表示静态查找表,则查找可用顺序查找来实现;b.以有序表(排好顺序的顺序 表) 表示静态查找表,则查找可用折半查找(二分查找)来实现。
2.动态查找表 3.哈希表 每种查找表有不同的特点。图:图(Graph)是由顶点的有穷非 空集合和顶点之间边的集合 组成,通常表示为:G(V,E),其中,G 表示一个图,V 是图 G 中顶点的集合,E 是图 G 中边的集合。 线性结构有:顺序表 单链表,栈,队列,串,广义数 组,循环链表和双向链表。 非线性结构有:树、二叉树、图、Set Map字典 散列表。 因此,答案选A。
☆考点2 数据结构的逻辑结构——【真题】
【解答】
ABD 物理结构,题目问的是逻辑结构,逻辑结构包括线性和非线性两种,有序表中 的“有序”是逻辑意义上的有序,指表 中的元素按某种规则已经排好了位置。 故选 C。