1. 顺序表

1.1 分类

  • 简单顺序表
  • 索引顺序表
    • 数据可以很不规则
    • 数据物理排列可以不要求
    • 索引的格式规整

1.2 实现方式

以更改是否方便为准

  • 一体式
  • 分离式

1.3 扩容问题

  • 每次定量增长:节省空间,操作频繁
  • 每次按比例增长:浪费

1.4 操作

  • 增加

    • 保存尾端插入
    • 非保存
    • 保存
  • 删除:和增加类似
  • Python-list 操作
    • 分离技术实现的动态表
    • 空表:8 个位置
    • 插入满:扩大 4 倍
    • 若果已经很大(如,>50000):加 1 倍

2. 链表

2.1 分类

  • 单向链表
  • 单向循环链表
  • 双向链表

2.2 链表相关操作

  • is_empty() 判断链表是否为空
  • length() 返回链表的长度
  • traverse() 遍历
  • add_first(item) 在头部添加一个结点(节点)
  • append(item) 在尾部添加一个结点
  • insert(pos, item) 在指定位置 pos 添加一个结点
  • remove(item) 删除一个结点
  • search(item) 查找结点是否存在

2.3 链表 VS 顺序表

下方 n 表示时间复杂度为 O(n),同理,1O(1)

  • 访问元素:n, 1
  • 头部插入:1, n
  • 尾部:n, 1
  • 中间插入:n, n

3. 关于代码实现

  • 代码见下一篇
  • 内容包括
    • 单向列表
    • 单向循环列表
    • 双向列表

[DS+Algo] 002 一维表结构的更多相关文章

  1. [DS+Algo] 003 一维表结构 Python 代码实现

    接上一篇 前言 本篇共 3 个代码实现 严格来说 code1 相当于模仿了 Python 的 list 的部分简单功能 code2 与 code3 简单实现了"循环单链表"与&qu ...

  2. DS实验题 Old_Driver UnionFindSet结构 指针实现邻接表存储

    题目见前文:DS实验题 Old_Driver UnionFindSet结构 这里使用邻接表存储敌人之间的关系,邻接表用指针实现: // // main.cpp // Old_Driver3 // // ...

  3. CACTI表结构和数据被动获取

    cacti我们也用了很久了,但是它的表结构一直都没有去关心过,得空抽了半个晚上的时间,把它的库表结构大概看了下,某些字段的含义跟大家分享下:cacti的数据都是存放在rrdtool中的,数据库存放的其 ...

  4. Sql语句查看表结构

    快速查看表对的就说明,及表字段描述及字段类型 --表描述 SELECT tbs.name 表名,ds.value 描述 FROM sys.extended_properties ds LEFT JOI ...

  5. sqlserver 2008 查看表描述,和表结构

    sp_help sys_user sp_columns   sys_user --表结构 THEN obj.name ELSE '' END AS 表名, col.colorder AS 序号 , c ...

  6. 微调数据库表结构,30 分钟搞定 WordPress 数据库查询缓慢问题

    同事的美女图片站,基于 WordPress 搭建的,因为数据越来越多,变得慢,我从 PHP slow log 里面看出是 WordPress 有些查询总是很慢,即使已经安装了页面缓存插件,但是由于页面 ...

  7. Excel:一维表和二维表 互转

    一.一维表转二维表 数据源: 一份流水账式的值班表,为了便于打印张贴,现在需要使其变成这样的样式: 也就是从一维表变成传说中的二维表. 1.新建查询 依次单击[数据]→[新建查询] →[从文件]→[从 ...

  8. 将DataTable 覆盖到 SQL某表(包括表结构及所有数据)

    调用代码: string tableName = "Sheet1"; openFileDlg.ShowDialog(); DataTable dt = GeneralFun.Fil ...

  9. 解决修改表结构,添加外键时出现“约束冲突”的错误

    由于表结构更改,使用新建表,现有部分表需要更改外键,将引用更改到新建表的相应字段.在更改过程中,部分表出现如下错误提示: ALTER TABLE 语句与 COLUMN FOREIGN KEY 约束 ' ...

随机推荐

  1. ZROI 19.08.08模拟赛

    传送门 写在前面:为了保护正睿题目版权,这里不放题面,只写题解. 首先恭喜swk今天翻车! "小心大样例演你."--天祺鸽鸽 果然swk今天被大样例演死了,天祺鸽鸽诚不欺我! A ...

  2. python设置图片背景和设置字体颜色大小

    # -*- coding: utf-8 -*- """ Created on Wed Dec 11 22:37:30 2019 @author: Dell "& ...

  3. ESP8266---TCP Client

    ESP8266WiFi库里面还有其他重要内容,比如跟http相关的 WiFiClient.WiFiServer,跟https相关的 WiFiClientSecure.WiFiServerSecure ...

  4. 【清华集训2014】mex

    题目 有一个长度为n的数组{a1,a2,...,an}.m次询问,每次询问一个区间内最小没有出现过的自然数. 分析 显然,当\(a_i>n\)时,对答案没有影响,所以全部视为n+1. 有两种方法 ...

  5. 【NOIP2016提高A组模拟9.24】总结

    第一题纯模拟,结果那个出题人脑子似乎进水了,空间限制开了1G!!! 导致我捉摸了半天为什么空间要开那么大,最后只能得出上面的结论. 第二题是个矩阵快速幂,比赛上我没把递推式求出来,但是根据各种乱搞,得 ...

  6. python学习理论

    结论 其实学python这本书 不一定要全部敲一遍 在“”动手试一试“”里面 把这篇学到的东西测试一下就算是掌握了 要在实际工作场景当中使用还需要进一步练习这样做的话 比较好一点 边学边测试 加深掌握 ...

  7. 算法设计与分析 1.2 不一样的fibonacci数列 (矩阵快速幂思想)

    题目描述 Winder 最近在学习 fibonacci 数列的相关知识.我们都知道 fibonacci 数列的递推公式是F(n) = F(n - 1) + F(n - 2)(n >= 2 且 n ...

  8. Springboot(八):emoji表情保存到mysql出错的解决办法

    emoji表情保存到mysql出错的解决办法 今天,在前端的说明信息中输入emoji表情的时候,插入数据库会报错 百度了一下,是因为mysql数据库的字符编码集不正确,utf8无法存入表情字符,只能将 ...

  9. 3D Computer Grapihcs Using OpenGL - 18 相机移动

    移动相机需要用到键盘按键,按键事件的引入需要包含头文件 #include <Qt3DInput\qkeyevent.h> 并实现QWidget中定义的虚函数keyPressEvent 我们 ...

  10. CSS 处理溢出强行换行

    CSS折行样式 word-break:break-all;允许单词拆分折行 word-break:keep-all;只能在半角空格或连字符处换行. word-wrap:break-word;在长单词或 ...