当前位置: 首页 > news >正文

设计一份包含网站建设范网站设计常识

设计一份包含网站建设范,网站设计常识,微网站免,阜创汇网站建设名额数组作为线性表的一种#xff0c;具有内存连续这一特点#xff0c;可以通过下标访问元素#xff0c;并且下标访问的时间复杂的是O(1)#xff0c;在数组的末尾插入和删除元素的时间复杂度同样是O(1)#xff0c;我们使用C实现一个简单的边长数组。 数据结构定义 class Arr…数组作为线性表的一种具有内存连续这一特点可以通过下标访问元素并且下标访问的时间复杂的是O(1)在数组的末尾插入和删除元素的时间复杂度同样是O(1)我们使用C实现一个简单的边长数组。 数据结构定义 class Array { int cur; int cap; int *tail; }; cur是当前元素的个数cap是数组的总容量tail是数组最后一个元素的下一个空间地址。 数组接口定义 #includeiostream #includestdlib.h #includetime.h class Array { private: int cur; int cap; int *tail; void expand(int size); public: Array(int size15); ~Array();// 末尾增加元素void push_back(int val);// 末尾删除元素void pop_back();// 按位置增加元素void insert(int pos, int val);// 按位置删除void erase(int pos);// 元素查询int find(int val);// 打印数据void show()const; };这里的expand函数用于给数组扩容由于扩容操作是由C标准库的函数实现的(参考vector)因此我们将expand函数使用private关键字修饰代表这个函数只能被Array自身使用。 函数实现 #includeiostream #includestdlib.h #includetime.h class Array { private: int cur; int cap; int *tail; void expand(int size) {int *pnew int[size*sizeof(int)];memcpy(p,tail,size);delete tail;tailp;capsize; } public: Array(int size15):cap(size),cur(0) {tailnew int[size]; } ~Array() {delete []tail;tailnullptr;//防止产生野指针 }// 末尾增加元素void push_back(int val){if(curcap){expand(2*cap);}tail[cur]val;}// 末尾删除元素void pop_back(){if(cur0)return;cur--;}// 按位置增加元素void insert(int pos, int val){if(pos0||poscur)return;if(curcap)expand(2*cap);for(int icur-1;ipos;i--){tail[i1]tail[i];}tail[pos]val;cur;}// 按位置删除void erase(int pos){if(pos0||poscur||cur0)return;for(int ipos1;icur;i){tail[i-1]tail[i];}cur--;}// 元素查询int find(int val){for(int i0;icur;i){if(tail[i]val)return i;}return -1;}// 打印数据void show()const{for(int i0;icur;i){std::couttail[i] ;}std::coutstd::endl;} };接口测试 int main() {Array array;srand(time(0));for(int i0;i10;i){array.push_back(rand()%100);}array.show();array.insert(1,100);array.show();array.pop_back();array.show();array.erase(2);array.show();std::coutarray.find(100); } 输出结果
http://www.w-s-a.com/news/63198/

相关文章:

  • 保定网站制作软件网页制作工具程
  • o2o网站建设教程计算机培训班培训费用
  • 赤峰网站制作php智能建站系统
  • 做高防鞋 哪个网站能上架net网站开发net网站开发
  • 做网站公司郑州推广计划步骤
  • 网站建设计无形资产外国做美食视频网站
  • 创立一个网站需要什么网推技巧
  • 网站的会员功能怎么做wordpress主题开拓右边栏
  • 做个一般的网站要多少钱nas 建网站
  • 网页设计作品源代码彼岸花坊网站seo测评
  • 用什么软件做动漫视频网站好环保网站设计价格
  • 合肥网站设计服投稿网站源码
  • 为什么很多网站用php做上海口碑最好的装修公司排名
  • 运城网站推广找人做小程序要多少钱
  • 做外链哪个网站好seo诊断网站
  • 网站建设与管理考查方案上海公司免费起名
  • 哪个网站做h5好做汽车网站
  • 汝州网站制作住房和城乡建设部官网进行查询
  • 怎么做整人点不完的网站获取网站访客qq号码源码
  • 自建网站软件网站如何减少404跳转
  • 我想学制作网站吗公司起名网站十大排名
  • 广州白云手机网站建设淘宝店铺怎么推广
  • 青海省住房与城乡建设厅网站珠海高端网站制作公司
  • 深圳个性化建网站公司简便网站建设
  • 网站安全狗十大免费ppt网站在线
  • 进网站后台显示空白图片模板 网站源码
  • dedecms 英文网站怎么在网站上做模式题库
  • 轻网站怎么建立国外做评论的网站
  • 拉米拉网站建设乐清网站网站建设
  • 获取网站全站代码申请免费域名的方法