牛客网专项练习总结(一)

本文总结了数据结构与算法中的专项练习,包括二分查找、数组存储、矩阵操作、队列运算、排序算法的选择及其性能分析。讨论了稀疏矩阵的存储方法,循环队列元素计算,最长单调上升子序列问题,以及对称矩阵的压缩存储。同时,涉及了指针、函数指针数组、数组引用的合法性,并探讨了优先级队列和有序数组的区别,以及Java中字符串数组的声明方式。
摘要由CSDN通过智能技术生成

1.二分查找要求元素 (   );

 二分查找又称折半查找,优点是比较次数少,查找速度快,平均性能好;其缺点是要求待查表为有序表,且插入删除困难。

 2.假设以行序为主序存储二维数组A=array[100][100],设每个数据元素占2个存储单元,基地址A[0][0]为10,则A[5,5]的地址为()。

选A             分析:

根据公式 基地址+(n(i-1)+j-1)b=10+(100*5+5)*2=1020

3.若数组A[0…m-1][0…n-1]按列优先顺序存储,则aij地址为( )。


 

选A

分析:1.将i,j=0代入,排除C,D;(这个只是排除错误答案) 2.因为列主序,所以aij前有j列*m个+i个元素。

4.数组A[0..4,-1..-3,5..7]中含有元素的个数()

A.45          B. 45                 C.36                       D.16

分析:

这是个三维数组:

长的边 个数:4-0+1=5

宽的边 个数 :(-1)-(-3)+1=3

高的边个数 :7-5+1=3

总个数:5*3*3

5.稀疏矩阵压缩的存储方法是:()

A.三元组              B.二维数组                     C.散列                      D.十字链表

分析:数据结构C++版,王红梅编著,十一五国家级规划教材。稀疏矩阵可用三元组或十字链表,十字链表更适合矩阵的加法乘法等操作

6.数组

  • 2
    点赞
  • 11
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值