专栏首页C语言入门到精通数据结构 | 每日一练(21)

数据结构 | 每日一练(21)

数据结构

合抱之木,生于毫末;九层之台,起于累土;千里之行,始于足下

——老子

1

每日一练

1.设单链表的结点结构为(data,next),next 为指针域,已知指针 px 指向单链表中 data 为 x 的结点,指

针 py 指向 data 为 y 的新结点 , 若将结点 y 插入结点 x 之后,则需要执行以下语句:_______; ______;

2.在一个长度为 n 的顺序表中第 i 个元素(1<=i<=n)之前插入一个元素时,需向后移动________个元素。

3.在单链表中设置头结点的作用是________。

4.对于一个具有 n 个结点的单链表,在已知的结点*p 后插入一个新结点的时间复杂度为________,在给定

值为 x 的结点后插入一个新结点的时间复杂度为________。

5.根据线性表的链式存储结构中每一个结点包含的指针个数,将线性链表分成________和_______;而又

根据指针的连接方式,链表又可分成________和________。

正确答案

1.py->next=px->next; px->next=py

2 .n-i+1

3.主要是使插入和删除等操作统一,在第一个元素之前插入元素和删除第一个结点不必另作判断。另外,不论链表是否为空,链表指针不变。

4.O(1),O(n)

5.单链表,多重链表,(动态)链表,静态链表

如果您觉得本篇文章对您有作用,请转发给更多的人,点一下好看就是对小编的最大支持!

-end-

你学习了么?

长按关注

文 | 闫小林

本文分享自微信公众号 - C语言入门到精通(gh_780327809188)

原文出处及转载信息见文内详细说明,如有侵权,请联系 yunjia_community@tencent.com 删除。

原始发表时间:2019-04-05

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

我来说两句

0 条评论
登录 后参与评论

相关文章

  • 编程小白 | 每日一练(42)

    这道理放在编程上也一并受用。在编程方面有着天赋异禀的人毕竟是少数,我们大多数人想要从编程小白进阶到高手,需要经历的是日积月累的学习,那么如何学习呢?当然是每天都...

    C语言入门到精通
  • 数据结构 | 每日一练(39)

    ——老子

    C语言入门到精通
  • 6.1 数据结构树的定义

    (2)当n>1时,其余结点可分为m(m>0)个互不相交的有限集T1,T2...,其中每一个集合本身又是一棵树,并且称为根的子树。

    C语言入门到精通
  • 揭开链表的真面目

    链表是一种常见的数据结构,链表是由一连串的结点组成,这个节点就是链结点,每个链结点都由数据域和指针域两部分组成。

    Java旅途
  • 编程小白 | 每日一练(42)

    这道理放在编程上也一并受用。在编程方面有着天赋异禀的人毕竟是少数,我们大多数人想要从编程小白进阶到高手,需要经历的是日积月累的学习,那么如何学习呢?当然是每天都...

    C语言入门到精通
  • 数据结构与算法 -线性表链式存储及其相关算法

    链表的具体存储用一组任意的存储单元来存放,链表中结点的逻辑次序和物理次序不一定相同,还必须存储指示其后继结点的地址信息。

    越陌度阡
  • 数据结构 第4讲 单链表

    链表是线性表的链式存储方式,逻辑上相邻的数据在计算机内的存储位置不一定相邻,那么怎么表示逻辑上的相邻关系呢?可以给每个元素附加一个指针域,指向下一个元素的存储位...

    rainchxy
  • C++链表的创建与操作

    我们知道,数组式计算机根据事先定义好的数组类型与长度自动为其分配一连续的存储单元,相同数组的位置和距离都是固定的,也就是说,任何一个数组元素的地址都可一个简单的...

    w4979的博客
  • 红黑树(一):构建红黑树

    前两篇文章谈了B-Tree和B+Tree,它们属于多路平衡树,所有叶子结点都在同一层,除了这两种平衡树, 我们熟知的还有平衡二叉树和红黑树。这一篇文章就来看看如...

    每天学Java
  • 红黑树

    每个结点不是红色就是黑色 不可能有连在一起的红色结点 根结点都是黑色 每个红色结点的两个子结点都是黑色 任一结点到其子树中每个叶子节点的路径都有相同数量...

    瑞新

扫码关注云+社区

领取腾讯云代金券