数据结构学习笔记:基本知识(二)
2014-07-31 21:24
316 查看
·链表结点的定义:
数据域,用来存放数据;
指针域,用来存放下一结点的位置。
·二叉树结点的定义:
二叉树结点***:
在(2)中,(*BT).data 与 BT->data 是等价的
·typedef 用来给现有的数据类型起一个新名字的
·传入函数参数变化问题
·数组作为函数的参数:
只要数组作为参数,都是引用型的。
顺序栈定义
链栈结点定义
数据域,用来存放数据;
指针域,用来存放下一结点的位置。
typedef struct Node { int data; //默认为int型,或者写成 ElementType element struct Node *next; } Node;
·二叉树结点的定义:
typedef struct BTNode { int data; //默认为int型,或者写成 ElementType element struct BTNode *lchild; struct BTNode *rchild; } BTNode;
二叉树结点***:
(1) BTNode BT; (2) BTNode *BT; BT = ( BTNode* )malloc( sizeof( struct BTNode ) );
在(2)中,(*BT).data 与 BT->data 是等价的
·typedef 用来给现有的数据类型起一个新名字的
·传入函数参数变化问题
int a; void f1 (int x ) { ++x; } void f2 (int &x ) { ++x; } void f3 (int *&x ) { ++x; } //执行完f3,指针x的值自增1 a = 0; f1( a ) // a的值没有发生变化, a = 0 f2( a ) // a 的值发生变化,a = 1,相当于a取代了x的位置
·数组作为函数的参数:
只要数组作为参数,都是引用型的。
void f( int x[], int n ); //一维数组 void f( int x[][maxSize], int n ); //二维数组,第二个[]中必须写上数组的长度
顺序栈定义
typedef struct { int data[maxSize]; //存放栈中元素 int top; //栈顶指针 } SqStack; //顺序栈类型定义
链栈结点定义
typedef struct LNode { int data; struct LNode *next; //指向后继结点的指针 }LNode; //链栈结点定义顺序队列定义:
typedef struct{ int data[maxSize]; int front; //队首 int rear; //队尾 }SqQueue; //顺序队类型定义链队定义:
typedef struct QNode{ int data; struct QNode *next; }QNode; //队结点类型定义 typedef struct{ QNode *front; //队首指针 QNode *rear; //队尾指针 }LiQueue; //链队类型定义
相关文章推荐
- 数据结构学习笔记:基本知识
- JavaScript学习笔记1——基本知识
- tcl/tk学习笔记:基本知识
- MYSQL基本知识 学习笔记 1
- BizTalk Server – 基本知识学习笔记(1)
- 第三章、一些基本数据结构使用和解析(iOS学习笔记,从零开始。)
- Hadoop学习笔记(五):一些关于HDFS的基本知识
- RPG学习笔记(基本知识了解)
- 【Java学习笔记】基础知识学习1【基本输出,数据类型,基础运算符号】
- ARM 学习笔记(一)基本知识
- cocos2d学习笔记(一) cocos2d的基本知识和环境配置
- 存储过程学习笔记三---T-SQL基本知识
- 基本的数据结构学习笔记:kref
- PHP学习笔记(2)--PHP数据库操作基本知识
- 【Java学习笔记】基础知识学习3【基本循环方法技巧】
- 基本的数据结构学习笔记:kref
- nginx 源码学习笔记(六)——nginx基本数据结构
- 数据结构基本概念 - 学习笔记
- 【hadoop】Hadoop学习笔记(五):一些关于HDFS的基本知识
- 【Java学习笔记】基础知识学习4【数组的基本知识】