数据结构笔记一

  • 数据
1.对客户事物的符号表示
2.能够输入到计算机

3.能够被计算机程序进行处理

数据元素:是数据的基本单位。

数据结构:相互之间存在一种或者多种特定关系的数据元素的集合。

数据的逻辑结构:

1.线性结构:线性表  栈  队列

2.非线性结构:树形结构  图形结构

数据的存储结构:

1.顺序存储

2.链式存储

数据的运算:检索  排序  插入  删除  修改   等

A    线性表:

静态:表中结点的存储是连接的,占用一块连续存储区,一般节点数是固定的

动态:表中节点的存储是不连续的,一般节点的数量是不固定的

静态图型表示:

数据1  

数据2

数据3

...

数据n-1

数据n

后继2

后继3

后继4

...

后继n

null

 结构:

    typedef struct{

         T data;//数据域

         int  next;//后继

    }Node,*pNode;

线性存储结构:借助元素在存储器中的相对位置(物理位置)相临来表示,数据元素之间的逻辑关系。

缺点:插入,删除元素时需要移动大量的数据;一次性分配内存空间,表的容量难以扩充。

 

动态:

 

结构:

   typedef struct{

        T data;//存储数据信息,数据域

        Node *next;//存储直接后继存储位置,指针域

  }Node,*pNode;

 

链式存储结构:

   struct Node{

        int data;

       struct Node *next;

   };

typedef struct Node m_Node;

只有一个指针域的结构图:

 

分为:单链    单循环链  双向循环链

带头结点和不带头结点,头结点是指头指针所指的不存放数据元素的结点。

单链表的操作:

A。删除:

    p=a.next;

    a.next=a.next.next;

    delete p;

 

B .插入:

    new p;     //申请

    p.data=x; //加载数据

    p.next=a.next;//加载后继

    a.next=p;确定前继

 

笔记二付代码,请关注,谢谢。

 

转载于:https://www.cnblogs.com/wust221/archive/2013/04/13/3017621.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值