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. 关于代码实现

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

最新文章

  1. Stanford机器学习笔记-9. 聚类(Clustering)
  2. (转)MySQL提示“too many connections”的解决办法
  3. 【转】移动web页面使用字体的思考
  4. Java类实例化时候的加载顺序
  5. SQL Server数据库大型应用解决方案总结
  6. 简单的线程同步问题:两个线程交替执行N次【Synchronized、Lock、ArrayBlockingQueue】
  7. JQuery图片滑动插件
  8. ECshop 在迁移到 PHP7 时遇到的兼容性问题
  9. 一个php创建webservice,并通过c#调用的真实实例
  10. java(jdk1.7) IO系列01之InputStream和OutputStream解析
  11. Python测试开发之---string
  12. jQuery hover() 方法
  13. [SHOI2008]汉诺塔
  14. 《C++实践之路.pdf》源码
  15. 谈.Net委托与线程——创建无阻塞的异步调用(二)
  16. CSS中float属性
  17. day17-json格式转换
  18. pca总结,非常详细
  19. 解题:POI 2009 Ticket Inspector
  20. php+tomcat 配置运行环境

热门文章

  1. flask+gevent的异步框架
  2. 循环结构——for语句、seq语句、while语句、break语句
  3. python---剪贴板
  4. “_MSC_VER”的不匹配项
  5. PHP开发环境 PHP培训教程
  6. 2019hdu多校 Keen On Everything But Triangle
  7. sql数据库相关语句
  8. 大数据笔记(二十九)——RDD简介、特性及常用算子
  9. win10笔记本设置管理员权限
  10. Using FileUpload