尊旭网
当前位置: 尊旭网 > 知识 >

数据结构试题

时间:2024-10-26 18:47:45 编辑:阿旭

数据结构类笔试题

数据结构类笔试题 一、选择题:15 分 共 10 题 1. 已知一个线性表(38,25,74,63,52,48),采用的散列函数为 Hash($Key)=$Key mod 7,将元素散列到表长为7的哈希表中存储。请选择后面两种冲突解决方法分别应用在该散列表上进行等概率成功查找的平均查找长度,拉链法 ,线性探测法 . A. 1.0 B. 1.5 C. 1.7 D. 2.0 E. 2.3 F. 7/6 G. 4/3 H. 3/2 2. 需要将OS缓冲区的数据刷新到硬盘,可以调用的函数有(多选): A.fflush() B. fsync() C. sync() D.writev() 3. 下面哪个shell语句不能打印出用户主目录的路径? A. echo $HOME B. echo ~ C. echo `$HOME` D. echo $HOME 4. 最坏情况下,合并两个大小为n的已排序数组所需要的比较次数 A.2n B.2n-1 C.2n 1 D.2n-2 5. 一个B类网的子网掩码是255.255.240.0,这个子网能拥有的最大主机数是: A. 240 B. 255 C.4094 D. 65534 6. 以下代码执行后,val的.值是___: unsigned long val = 0; char a = 048; char b = 052; val = b 8 | a; A 20992 B 21064 C 72 D 0 7. 内存的速度远远高于磁盘速度,所以为了解决这个矛盾,可以采用: A 并行技术 B 虚存技术 C 缓冲技术 D 通道技术 8. 以下代码打印的结果是(假设运行在i386系列计算机上): struct st_t { int status; short* pdata; char errstr[32]; }; st_t st[16]; char* p = (char*)(st[2].errstr 32); printf(%d, (p - (char*)(st))); A 32 B 114 C 120 D 1112 9. 同一进程下的线程可以共享以下 A. stack B. data section C. register set D. thread ID 10. 以下哪种操作最适合先进行排序处理? A 找最大、最小值 B 计算算术平均值 C 找中间值 D 找出现次数最多的值 ;


数据结构笔试题和答案

数据结构笔试题和答案   数据结构笔试题和答案: 1. 在一个单链表中p所指结点之前插入一个s (值为e)所指结点时,可执行如下操作:   q=head;   while (q->next!=p) q=q->next;   s= new Node; s->data=e;   q->next= ; //填空   s->next= ; //填空   2. 线性表的顺序存储结构是一种 的存储结构,而链式存储结构是一种___的存储结构。   A.随机存取 B.索引存取 C.顺序存取 D.散列存取   3. 线性表若采用链式存储结构时,要求内存中可用存储单元的地址___。   A. 必须是连续的 B. 部分地址必须是连续的   C. 一定是不连续的 D. 连续或不连续都可以   4. 在一个单链表中,已知q所指结点是p所指结点的前驱结点,若在q和p之间插入s结点,则执行____。   A. s->next=p->next; p->next=s; B. p->next=s->next; s->next=p;   C. q->next=s; s->next=p; D. p->next=s; s->next=q;   5. 在一个单链表中,若p所指结点不是最后结点,在p之后插入s所指结点,则执行____。   A. s->next=p; p->next=s; B. s->next=p->next; p->next=s;   C. s->next=p->next; p=s; C. p->next=s; s->next=p;   6. 在一个单链表中,若删除p所指结点的后续结点,则执行____。   A. p->next= p->next->next; B. p= p->next; p->next= p->next->next;   C. p->next= p->next; D. p= p->next->next;   7. 链表不具备的特点是 ____ 。   A 可随机访问任何一个元素 B 插入、删除操作不需要移动元素   C 无需事先估计存储空间大小 D 所需存储空间与线性表长度成正比   8. 以下关于线性表的说法不正确的是 。   A 线性表中的`数据元素可以是数字、字符、记录等不同类型。   B 线性表中包含的数据元素个数不是任意的。   C 线性表中的每个结点都有且只有一个直接前趋和直接后继。   D 存在这样的线性表:表中各结点都没有直接前趋和直接后继。   9. 在一个长度为n的顺序表中删除第i个元素,要移动 个元素。如果要在第i个元素前插入一个元素,要后移( )个元素。 N-I N-I+1   答案   1.q->next=s;   s->next=p;   2.A/C(这题是考察对概念的理解,可参考第7题,“顺序表才能随即存取,而链表不可以”)   3.D   4.C   5.B   6.A   7.A(此题绝对选A,因为链表只能根据他的前一个结点才能找到下一个结点,不具备随即访问元素的功能)   8.C   9.n-i; n-i+1 更多的相关笔试题目推荐: 融捷科java软件工程师技笔试题 运营维护工程师笔试题 中国银行计算机方向笔试题目 ;


数据结构试题麻烦各位会的朋友看一下

9 2 3 +- 10 2 / -的值是-1,就是对应的中缀算式:9-(2+3)-10/2=-1;

中缀算式(3+4X)-2Y/3的4X和2Y应该是4*X、2*Y,即应理解为:(3+4*X)-2*Y/3

其为:3 4 X*+2Y*3/-
前缀表达式,就是把运算符放在前面、操作数放在后面。
中缀表达式,就是把运算符放在两个操作数之间,即常见的算术运算表达式。
后缀表达式,就是把操作数放在前面、运算符放在后面。

以后缀算式9 2 3 +- 10 2 / -为例说明一下,详细可以到百度找。
运算顺序是从左到右,找到有两个数在一起且后面是运算符则进行运算,即23+;结果是2+3=5,把5代替23+,为95-10 2/-,接着计算95-,结果是9-5=4,同上,原式变为:4 10 2/-,计算10 2/,结果为:10/2=5,继续变为:45-,最后结果为:4-5=-1