数据结构-4
来源:互联网 发布:软件外包服务是什么 编辑:程序博客网 时间:2024/06/16 22:27
2016/02/17 00:06
1.ADT的规范,并且基于这种规范给出向量接口的定义
实现了对于一个数据结构而言最重要的构造与析构接口
与所有数据结构一样,向量也可以看成是一组数据的集合。
2.集中研究向量的可扩充性能
向量是不具备可扩充性能的,原因在于它的静态空间管理。
我们知道向量其实就是开辟一个内部数组_elem[]并使用一段地址连续的物理空间
在elem[]中_capacity是总容量,_size是当前的实际容量。
不难发现使用静态空间管理策略有着严重的不足:
上溢overflow
下溢underflow:装填因子很小空间浪费
3.动态空间管理策略
向量随实际需求动态调整容量,并同时保证高效率。
在练习笔记中expand中:对于尚未封装的数组同样可以运用这个策略,那么对于向量而言这段代码有什么优势呢?这个优势体现在向量整体的封装性上。
我们知道对于一般的数组而言,如果经过动态地重新分配地址,那么原先指向数组内某些元素的指针会出现无效现象。
而在这里向量的封装中,我们同一用了_elem这个统一的指示器来标识空间的起点,尽管扩容之后数据区的物理地址有所改变,却不至于出现野指针。
*******************************************
2016/02/07 20:24
1.跨函数调用内存
#include <stdlib.h>
main()
{
int *p;
fun(&p);
.......
}
int fun(int **q)
{
*q=(int *)malloc(4);
}
2.记得java里有arraylist类还有add()等等一些已经封装好的调用函数
学会这类函数的底层封装程序的编写。用c写出:。。。。。。。。。。。。
结构体变量不能加减乘除,但可以相互赋值。
0 0
- 数据结构4
- 数据结构-4
- 数据结构4
- 数据结构试题4
- 数据结构实验4
- 程序员数据结构笔记4
- 数据结构笔记4 栈
- 数据结构复习笔记(4)
- 程序员数据结构笔记4
- 数据结构(4图)
- 数据结构作业-4
- 数据结构之哈希表(4)
- 21,数据结构(4)
- JBPM4.4流程数据结构
- 数据结构学习笔记4
- 《数据结构实验4》--查找
- 数据结构概述<4>队列
- 数据结构课程设计 题目4
- iOS9网络适配_改用更安全的HTTPS
- android WebView开发总结<续>
- 【bzoj2127】happiness 最小割
- 关于new 和delete的灾祸
- 韩顺平 javascript教学视频_学习笔记29_dom编程加强_dom对象(document2) 加强重要
- 数据结构-4
- 浅析activity
- iOS CGAffineTransform属性
- clang中的活跃性分析
- 对 APM 用户的一次真实调查分析(上)
- svn使用教程
- 欢迎使用CSDN-markdown编辑器
- UIPopoverController如何使用(选自CocoaChina)
- power designer pdm生成sql脚本和数据库