首页 > 其他分享 >【以练促学】(数据结构)1.绪论篇

【以练促学】(数据结构)1.绪论篇

时间:2022-10-16 20:02:05浏览次数:39  
标签:存储 绪论 eg 元素 促学 以练 链式 数据 复杂度

(持续刷题 持续更新...)

 

1. 数据结构的三要素:逻辑结构、物理结构、数据运算

 eg. 以下属于逻辑结构的(  )

A. 顺序表     B. 哈希表     C. 有序表    D. 单链表

// A顺序表表示是按照顺序存储的方式存储,B哈希表使用散列存储,D单链表表明是链式存储。这三个选项都是根据它的物理存储方式命名的,都属于存储结构/物理结构。有序表指有序的线性表)C有序表可用顺序/链式 存储,只表示逻辑结构

 

 eg. 以下属于逻辑结构的(  )

A. 循环队列     B. 链表     C. 哈希表    D. 栈

// 回顾一下存储结构是啥?顺序、链式、索引、散列。A循环队列是顺序存储,B链表是链式存储,C哈希表使用散列存储,D栈是一种抽象数据类型,可用顺序/链式 存储,只表示逻辑结构

 

 

2. 在存储数据时,不仅要存储数据元素的值,且要存储数据元素间的关系

eg. 在存储数据时,不仅要存储数据元素的值,而且要存储(  )

A. 数据的操作方法    B. 数据元素的类型    C. 数据元素之间的关系    D. 数据的存取方法

// 数据元素是数据的基本单位。根据数据元素之间的关系的不同特征,可以分成集合、线性结构、树状结构、图状或者网状结构4类基本结构。在存储数据时,不仅要存储数据元素的值,且要存储数据元素间的关系

 

 

3. 链式存储:存储空间可以不连续,存储单元地址必须连续

eg. 链式存储设计时,结点内的存储单元地址(  )

A. 一定连续    B. 一定不连续    C. 不一定连续    D. 部分连续,部分不连续

// 看清题意,问的是存储单元地址

 

 

4. 算法:是对特定问题求解步骤的一种描述

eg. 一个算法应该是(  )

A. 程序    B. 问题求解步骤的描述    C. 要满足5个基本特性    D. A和C

// 此题网上好像有争议,A程序会有特殊情况(死循环等),建议选B

 

 

5.时间复杂度(多动笔计算)

eg. 已知两个长度分别为m 和 n 的升序链表,若将它们合并为一个长度为 m+n 的降序链表,则最坏情况下的时间复杂度是(  )
A.O(n)    B.O(m*n)    C.O(min(m,n))    D.O(max(m,n))

// 留个坑,看解析也没看懂

 

eg. 下列程序段的时间复杂度(  )

count = 0
for (k=1; k<=n; k*=2)
     for(j=1; j<=n; j++)
          count++;

A. O(log2n)    B. O(n)    C. O(nlog2n)    D. O(n2)

// 内层是O(n),外层是O(log2n),嵌套循环相乘为O(nlog2n) 

 

eg. 下列函数的时间复杂度(  )

int func(int n){
     int i=0, sum=0;
     while (sum<n) sum += ++i;
     return i;
}

A. O(logn)    B. O(n1/2)    C. O(n)   D. O(nlogn) 

// 大不了就穷举,sum是个等差求和sum=0+1+2+...+i,套公式就是sum=i2 , 循环次数满足sum<n,O(n1/2

 

 eg. 以下算法中加下划线的语句的执行次数是(  )

int m=0, i, j;
for(i=1; i<=n; i++)
     for(j=1; j<=2*i; j++)
          m++;

A. n(n+1)    B. n    C. n+1    D.n2

 // 注意是语句的执行次数,不能一看到代码就以为是求复杂度。穷举找规律:n=1时,执行2次;n=2时,执行2+4次;n=3时,执行2+4+6次;n=4时,执行2+4+6+8次;所以是n(n+1) 

 

eg. 设n是描述问题规模的非负整数,下列程序段的时间复杂度是(  )

x=0;
while (n>=(x+1)*(x+1))
x+=1;

A. O(logn)    B. O(n1/2)    C. O(n)    D. O(n2)

 // 留个坑,看解析也没看懂

 

 

 

 未完待续...

 

 

 

 

 


 

涉及的后面一点知识点:

① 哈希表:散列存储;

② 栈是一种抽象数据类型;

 

标签:存储,绪论,eg,元素,促学,以练,链式,数据,复杂度
From: https://www.cnblogs.com/ZWJ-zwj/p/16796473.html

相关文章

  • 数据结构—第一章绪论习题
    1、简述下列概念:数据、数据元素、数据项、数据对象、数据结构、逻辑结构、存储结构、抽象数据类型。解答:    数据:是客观事物的符号表示,指所有能输入到计算机中并被......
  • 【以练促学】1.小凯撒密码
    要将"china"译成密码;译码规律是:用原来字母后面的第4个字母代替原来的字母.例如,字母"A"后面第4个字母是"E"."E"代替"A"。因此,"china"应译为"glmre"。#include<stdio.h>intmai......
  • 绪论
    高级语言的实现编译方式:源语言为高级语言,目标语言为低级语言(汇编或机器语言)的翻译程序。解释方式:一边翻译一边执行,翻译完的同时也执行完程序。两者的区别:编译......
  • 数据结构基础—绪论
    数据结构基础—绪论一、什么式数据结构数据结构是一门研究非数值计算的程序实际问题中计算机的操作对象以及它们之间关系和操作等的学科程序设计=数据结构+算法数......
  • 【以练促学】(C++基础语法)字符串篇
    (持续刷题持续更新...) 1.读取字符串cin>>arr;//输入字符串时,遇到空格或回车就会停止2. 读含空格字符串的3种方法:fgets(arr,100,stdin);cin.getline(arr,10......
  • 【以练促学】序
    今天刷题时灵感乍现!!!!!决定开个【以练促学】板块 主要想通过刷题的快乐,记录一些我觉得<还蛮重要的>知识点,以练促学如果也能给您提供一些学习思路的话,本小白会很开心的哈......
  • 绪论:数据结构与算法
    数据结构数据 数据结构:是相互之间存在一种或多种特定关系的数据元素的集合按照视点不同,把数据结构分为逻辑结构和物理结构 算法算法是解决特定问题求解步骤的描述......
  • 第一章:绪论相关知识点
    1.2基本概念和术语   1.2.1 数据、数据元素、数据项和数据对象 数据(Data):是客观事物的符号表示,是所有能输入到计算机中并被计算机程序处理的符号的总称。......
  • 数字信号处理--第一章/绪论
    数字信号处理的基本运算提出的信号处理问题,都要用适当的理论模型来表示,而理论模型要归结于一组相互联系的运算即为数字信号处理算法。常用基本运算:1、差分方程的计算2、离......
  • 考研数据结构与算法(一)绪论
    目录一、数据结构概念1.1数据的逻辑结构1.2数据的存储结构二、基本术语2.1数据2.2数据元素2.3数据对象2.4数据类型三、抽象数据类型ADT四、算法和算法分析4.1算法4......