C++如何實(shí)現(xiàn)動態(tài)線性表-創(chuàng)新互聯(lián)

這篇文章主要為大家展示了C++如何實(shí)現(xiàn)動態(tài)線性表,內(nèi)容簡而易懂,希望大家可以學(xué)習(xí)一下,學(xué)習(xí)完之后肯定會有收獲的,下面讓小編帶大家一起來看看吧。

創(chuàng)新互聯(lián)成立于2013年,先為公安等服務(wù)建站,公安等地企業(yè),進(jìn)行企業(yè)商務(wù)咨詢服務(wù)。為公安企業(yè)網(wǎng)站制作PC+手機(jī)+微官網(wǎng)三網(wǎng)同步一站式服務(wù)解決您的所有建站問題。

C++如何實(shí)現(xiàn)動態(tài)線性表

這里使用指針來遍歷數(shù)組,這樣在算size,capacity的時(shí)候,直接用指針相減的方式就可以得到元素個(gè)數(shù),以及容量。

Vector.h

#include <iostream>
#include<assert.h>
#include<stdio.h>
#include<string.h>
//用typedef定義int為存儲類型,想更改直接更改這一句即可。
typedef int DataType;

class Vector
{
public:
  //構(gòu)造函數(shù)。
  Vector()
  {
    _first = new DataType[3];
    _finish = _first;
    _endofstorage = _first + 3;
  }
  //拷貝構(gòu)造
  Vector(const Vector& v)
  {
    _first = new DataType[v.Size()];
    memmove(_first, v._first, v.Size()*sizeof(DataType));
    _finish = _first + v.Size() ;
    _endofstorage = _finish ;
  }
  //賦值運(yùn)算符的重載
  Vector& operator=(Vector v);
  //析構(gòu)函數(shù)
  ~Vector()
  {
    delete[] _first;
  }
  //順序表的有效長度
  size_t Size() const
  {
    return _finish - _first ;
  }
  //順序表的容量
  size_t Capacity() const
  {
    return _endofstorage - _first ;
  }
  //擴(kuò)容順序表
  void Expand(size_t n);
  //尾插
  void PushBack(DataType x);
  //截取容量
  void Reserve(size_t n);
  //尾刪
  void PopBack();
  //任意位置插入
  void Insert(size_t pos, DataType x);
  //任意位置刪除
  void Erase(size_t pos);
  //查找元素
  size_t Find(DataType x);
  //打印當(dāng)前順序表
  void Print();
private:
  //指向第一個(gè)元素的指針
  DataType* _first;
  //指向最后一個(gè)有效元素的下一個(gè)位置
  DataType* _finish;
  //順序表容量的下一個(gè)位置
  DataType* _endofstorage;
};

另外有需要云服務(wù)器可以了解下創(chuàng)新互聯(lián)建站bm7419.com,海內(nèi)外云服務(wù)器15元起步,三天無理由+7*72小時(shí)售后在線,公司持有idc許可證,提供“云服務(wù)器、裸金屬服務(wù)器、高防服務(wù)器、香港服務(wù)器、美國服務(wù)器、虛擬主機(jī)、免備案服務(wù)器”等云主機(jī)租用服務(wù)以及企業(yè)上云的綜合解決方案,具有“安全穩(wěn)定、簡單易用、服務(wù)可用性高、性價(jià)比高”等特點(diǎn)與優(yōu)勢,專為企業(yè)上云打造定制,能夠滿足用戶豐富、多元化的應(yīng)用場景需求。

網(wǎng)頁名稱:C++如何實(shí)現(xiàn)動態(tài)線性表-創(chuàng)新互聯(lián)
標(biāo)題URL:http://bm7419.com/article4/cdihie.html

成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供靜態(tài)網(wǎng)站、電子商務(wù)網(wǎng)站設(shè)計(jì)、做網(wǎng)站標(biāo)簽優(yōu)化、服務(wù)器托管

廣告

聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來源: 創(chuàng)新互聯(lián)

外貿(mào)網(wǎng)站制作