zoukankan      html  css  js  c++  java
  • C语言(十七)链表

    一、算法

            通俗定义:

                解题的方法和步骤

            狭义定义:

                对存储数据的操作

                对不同的存储结构,要完成某一个功能所执行的操作时不一样的

                比如:

                   要输出数组中所有的元素的操作和

                   要输出数组中所有元素的操作肯定是不一样的

                这说明:

                   算法是依附于存储结构的

                   不同的存储结构,所执行的算法是不一样的

            广义定义:

                广义的算法也叫泛型

                无论数据是如何存储的,对该数据的操作都是一样

            我们至少可以通过两种结构来存储数据

                  数组

                    优点:

                      存取速度快

                    缺点:

                      需要一个连续的很大的内存

                      插入和删除元素的效率很低

                  链表

                    专业术语:

                        头结点

                          头结点的数据类型和首节点的类型是一模一样的

                          头结点是首节点前面的那个节点

                          头结点并不存放有效数据

                          设置头结点的目的是为了方便对链表的操作                        头指针

                          存放头结点地址指针变量

                        首节点

                            存放第一个有效数据的节点

                        尾节点

                            存放最后一个有效数据的节点

                    优点:

                      插入删除元素效率高

                      不需要一个连续的很大的内存空间

                    缺点: 

                      查找某个位置的元素效率低

  • 相关阅读:
    集合框架之——迭代器并发修改异常ConcurrentModificationException
    Python day 3 (3) 判断与循环
    hdu 5335 Walk Out(bfs+斜行递推) 2015 Multi-University Training Contest 4
    hdu 2473 Junk-Mail Filter(并查集_虚节点)2008 Asia Regional Hangzhou
    hdu 1573 x问题(中国剩余定理)HDU 2007-1 Programming Contest
    hdu 3461 Code Lock(并查集)2010 ACM-ICPC Multi-University Training Contest(3)
    hdu 2155 小黑的镇魂曲(dp) 2008信息工程学院集训队——选拔赛
    hdu 4081 Qin Shi Huang's National Road System(最小生成树+dp)2011 Asia Beijing Regional Contest
    hdu 3938 Portal(并查集+离线+kruskal)2011 Multi-University Training Contest 10
    hdu 3172 Virtual Friends(并查集)University of Waterloo Local Contest 2008.09
  • 原文地址:https://www.cnblogs.com/Maxwell599/p/3182493.html
Copyright © 2011-2022 走看看