更多c++知識:c++目錄索引
順序表:
vector.h
#pragma once
typedef int datatype;
class vector
;
vector.cpp
#include"vector.h"
#include
using
namespace
std;
vector::vector()//構造
:_first(null)
, _finish(null)
, _endofstorage(null)
{}vector::~vector()//析構
_first = _finish = _endofstorage = null;
}void vector::show()
cout
<< endl;
}//v1(v)
vector::vector(const vector& v)
}}void vector::swap(vector& tmp)
vector& vector::operator=(const vector& v)
return *this;
}size_t vector::size()//大小
size_t vector::capacity()//容量
void vector::expand(size_t n)//擴容
//釋放舊空間
delete _first;
_finish = _endofstorage = null;
_first = array;
_finish = newfinish;
_endofstorage = newend;
}}
void vector::pushback(datatype x)//尾插
*_finish = x;
_finish++;
}void vector::reserve(size_t n)//n大小,保留空間,欲開空間
void vector::popback()//尾刪
}void vector::insert(size_t pos, datatype x)//插入
datatype* cur = _finish;
while (cur >= _first + pos)
*(_first + pos) = x;
_finish++;
}void vector::erase(size_t pos)//刪除
size_t vector::find(datatype x)//查詢
++cur;
}return -1;
}}
鍊錶#pragma once
#include
using namespace std;
typedef int datatype;
struct listnode
};class list
;
list.cpp
list::list()
:head(new node(datatype()))
list::list(const
list& l)
}void list::swap(list& l)
list& list::operator=(const
list& l)//交換
return *this;
}list::~list()
head = null;
}void list::pushback(datatype x)
else
}void list::popback()
void list::pushfront(datatype x)//頭插
void list::popfront()//頭刪
void list::insert(node* pos, datatype x)//任意位置插入
void list::erase(node* pos)//任意位置刪除
list::node* list::find(datatype x)
cur = cur->_next;
}return
null;
}void list::show()//列印
printf("\n");
}
c 順序表和煉表
這節來說下順序表和煉表 1 集合中必存在唯一的 第乙個元素 2 集合中必存在唯一的 最後乙個元素 3 除第乙個元素外,其他的元素都只有乙個後繼 4 除最後乙個元素外,其他的元素都只有乙個前驅 把線性表中的節點按照邏輯次序儲存在一組連續的位址單元中,在計算機中以陣列的形式儲存的線性表。在順序表中每個節...
C 類實現順序表和雙向鍊錶
1.include 2.include 3.using namespace std 4.5.typedef int datatype 6.7.class seqlist 8.15.16.seqlist size t n,datatype value 17.24.25.seqlist const se...
C 模板實現順序表和煉表
順序表 pragma once include include include using namespace std 模板實現順序表 考慮深層次的深淺拷貝問題 template class seqlist t operator size t pos void print private t a s...