数据结构—算法概念与设计、学生成绩管理系统【习题篇】(一)

简介: 数据结构—算法概念与设计、学生成绩管理系统【习题篇】

一、习题篇


       (一) 概念题


                1. 试述数据结构研究的3个方面的内容。


                         解析:数据结构研究的3个方面分布是:


                               数据的逻辑结构


                               数据的存储结构


                               数据的运算(操作)

2. 试述集合、线性结构、树形结构和图形结构4种常见的数据结构的特性。


                       集合结构


                               集合中数据元素之间除了“同属于一个集合”的特性外,数据元素之间无其他关系,它们之间的关系称为是松散性的


                       线性结构


                               线性结构中数据元素之间存在“一对一”的关系。


                               若结构非空,则它有且仅有一个开始结点和终端结点,开始结点没有前驱但有一个后继。终端结点没有后继但有一个前驱。其余结点有其仅有一个前驱和后继。


                       树形结构


                               树形结构中数据元素之间存在“一对多”的关系。


                               若结构非空,则它有一个称为根的结点,此结点无前驱结点,其余结点有且仅有一个前驱,所有结点都可能有多个后继。


                       图形结构


                        图形结构中数据元素之间存在“多对多”的关系。


             若结构非空,则在这种数据结构中任何结点都可能有多个前驱和后继。


3. 设有数据的逻辑结构的二元组定义形式为B=(D,R), 其中D = {a1,a2,a3,......an} ,  R={< ai,a i+1 > | i = 1,2,3.......n -1},请画出此逻辑结构对应的顺序存储结构和链式存储结构的示意图。

顺序存储结构示意图:

4b9138d574944b508d06372d1d480a12.png

链式结构示意图:


e3e96e99b925413c87cc1dbf6d3c77ee.png


              4. 设一个数据结构的逻辑结构如下图,请写成它的二元组定义形式。


ea78c18160c64e0e964f7f73687f0428.png


                       解析:由于二元组的定义形式为B= (D,R) ; 如图可知:


                               D = {k1,k2,k3,k4,k5,k6,k7,k8,k9} ;


                               则R = {ROW,COL} 【{行,列}】。故:R = { , , , , , , , , , , }


                 5. 试确定下列程序段中有标记符号 ‘ # ’ 的语句行的语句频度(其中n为正整数)


(1)  语句频度:n-1

i = 1 ; k = 0 ;
while ( i <= n -1 ) {
    k += 10*i ;             // #
    i++ ;
}

(2)  语句频度:当n <= 1 时频度为 1 , 当n > 1 时语句频度 为 n-1

i = 1 ; k = 0 ;
do {
    k += 10 * i ;        //#
    i++ ;
}while (i <= n-1 );

(3)  语句频度:n-1

i = 1 ; k = 0 ;
while ( i <= n -1 ) {
    i++ ;
     k += 10*i ;             // #
}

(4)  语句频度:n(n+1)/2

k = 0 ;
for(int i = 1 ; i <= n ; i++ ) {
    for( int j = 1; j <= i ; j++ ) {
        k++ ;         // #
    }
}

(5)  语句频度:n

i = 1 ; j = 0 ;
while (i + j <= n) {
    if(i > j ) {
        j ++ ;      //#
    }else {
        i ++ ;
    }
}

(6)  语句频度:根号n 取整

x = n ; y = 0 ;        //n 是不小于1 的整数
while (x >= (y+1) * (y+1) ) {
    y ++ ;            //#
}

(7)   语句频度:1100

x = 91 ; y = 100 ;
while( y > 0 ) {
    if(x > 100 ) {
        x -= 10 ; 
        y -- ;        //#
    }else {
        x++ ;
    }
}

(8)  语句频度:log3 n 【3 为下标】

a = 1 ; m = 1 ;
while(a < n) {
    m += a ;
    a *= 3 ;         //# 
}
相关文章
|
18天前
|
算法
基于MPPT算法的光伏并网发电系统simulink建模与仿真
本课题基于MATLAB/Simulink搭建光伏并网发电系统模型,集成PV模块、MPPT算法、PWM控制与并网电路,实现最大功率跟踪与电能高效并网。通过仿真验证系统在不同环境下的动态响应与稳定性,采用SVPWM与电流闭环控制,确保输出电流与电网同频同相,满足并网电能质量要求。
|
1月前
|
数据采集 边缘计算 算法
遗传算法+多目标规划算法+自适应神经模糊系统(Matlab代码实现)
遗传算法+多目标规划算法+自适应神经模糊系统(Matlab代码实现)
|
24天前
|
机器学习/深度学习 传感器 算法
【无人车路径跟踪】基于神经网络的数据驱动迭代学习控制(ILC)算法,用于具有未知模型和重复任务的非线性单输入单输出(SISO)离散时间系统的无人车的路径跟踪(Matlab代码实现)
【无人车路径跟踪】基于神经网络的数据驱动迭代学习控制(ILC)算法,用于具有未知模型和重复任务的非线性单输入单输出(SISO)离散时间系统的无人车的路径跟踪(Matlab代码实现)
|
1月前
|
机器学习/深度学习 自然语言处理 算法
基于改进鲸鱼优化算法的微网系统能量优化管理研究(Matlab代码实现)
基于改进鲸鱼优化算法的微网系统能量优化管理研究(Matlab代码实现)
|
2月前
|
机器学习/深度学习 算法 数据可视化
近端策略优化算法PPO的核心概念和PyTorch实现详解
本文深入解析了近端策略优化(PPO)算法的核心原理,并基于PyTorch框架实现了完整的强化学习训练流程。通过Lunar Lander环境展示了算法的全过程,涵盖环境交互、优势函数计算、策略更新等关键模块。内容理论与实践结合,适合希望掌握PPO算法及其实现的读者。
374 2
近端策略优化算法PPO的核心概念和PyTorch实现详解
|
1月前
|
机器学习/深度学习 算法 算法框架/工具
256KB内存约束下的设备端训练:算法与系统协同设计——论文解读
MIT与MIT-IBM Watson AI Lab团队提出一种创新方法,在仅256KB SRAM和1MB Flash的微控制器上实现深度神经网络训练。该研究通过量化感知缩放(QAS)、稀疏层/张量更新及算子重排序等技术,将内存占用降至141KB,较传统框架减少2300倍,首次突破设备端训练的内存瓶颈,推动边缘智能发展。
154 6
|
2月前
|
机器学习/深度学习 边缘计算 算法
【状态估计】基于LMS类自适应滤波算法、NLMS 和 LMF 进行系统识别比较研究(Matlab代码实现)
【状态估计】基于LMS类自适应滤波算法、NLMS 和 LMF 进行系统识别比较研究(Matlab代码实现)
116 3
|
1月前
|
机器学习/深度学习 存储 算法
基于模型预测算法的混合储能微电网双层能量管理系统研究(Matlab代码实现)
基于模型预测算法的混合储能微电网双层能量管理系统研究(Matlab代码实现)
|
2月前
|
机器学习/深度学习 人工智能 算法
【多智能体编队】基于自适应控制算法非线性输入的多智能体系统编队控制研究(Matlab代码复现)
【多智能体编队】基于自适应控制算法非线性输入的多智能体系统编队控制研究(Matlab代码复现)
|
3月前
|
算法 数据可视化 数据挖掘
基于EM期望最大化算法的GMM参数估计与三维数据分类系统python源码
本内容展示了基于EM算法的高斯混合模型(GMM)聚类实现,包含完整Python代码、运行效果图及理论解析。程序使用三维数据进行演示,涵盖误差计算、模型参数更新、结果可视化等关键步骤,并附有详细注释与操作视频,适合学习EM算法与GMM模型的原理及应用。

热门文章

最新文章