zoukankan      html  css  js  c++  java
  • 说说数据结构

    所谓的数据结构其实就是内存的一种存储方式而已;

    想想内存条的插槽,一排连续的金属片;

    如果把把每条金额片当作一个存储单元的话;你会怎么存放东西呢;

    1:把内容直接放到连续的插槽进去,如果内容变大了就拔出来再换个够大地区段插进去;————这就是数组

    2:把所有的内容用一根线连起来,然后把每个内容单元插入到不定位置的卡槽中去;只要记住第一个内容单元的插槽位置即可,顺着连接的线就可以一个一个的找到下一个内容单元了;————这就是链表

    3:在2的基础上用两根线连起来,一根可以往前找,一个可以往 后找;————这就是双向链表

    4:在3的基础上把两根线头和线尾拧在一起打个结;————就是双向循环链表

    这个时候当内容单元很多的时候发现这根线连接的好长长啊,要找其中一个内容单元时太麻烦了,太难找了,怎么办呢?

    5:把长线剪成一小段一小段,然后每个单元块往后接两根线,这样从前面的(一个单元到另一个单元)变成了(一个单元到另两上单元)————这就是二叉树

    6:还有红黑树不知道怎么说了,,后续在写吧;

    ——总之,所有的数据结构无非就是:数组,链表,树的使用或组合使用;

    具体适用什么组合就看具体的应用场景了(增,删,改,查)哪个用的多来分析用什么数据结构;

    还有什么线程安全的问题也下回在完善吧;

    ——以上纯属个人理解

  • 相关阅读:
    HTML5画图板PhoneGap移植
    简易WCF负载均衡方案
    坑爹的“类型初始值设定项引发异常”
    关于for循环中变量定义的位置
    有道云笔记open api sdk for .net α版
    SL/WPF仿WIN8进度条
    HTML5做个画图板
    Google搜索命令“site:”运算符高级使用技巧:
    ubuntu系统托盘不显示ibus输入法图标(语言栏输入法)的解决方法:
    DOS中如何删除文件夹~
  • 原文地址:https://www.cnblogs.com/breka/p/9771830.html
Copyright © 2011-2022 走看看