c 培訓周總結4

2021-06-19 12:06:35 字數 2847 閱讀 5868

培訓部分

資料結構的概念:

邏輯結構

物理結構

運算結構

幾個常用的資料結構:

堆疊(棧)

佇列鍊錶

二叉樹(有序)

資料結構的分類:

抽象層——邏輯結構(人腦中)

結構層——物理結構(計算機)

實現層——運算結構(應用角度)

邏輯結構的分類:

集合結構(集) - 結構中的元素除了 同屬於乙個集合之外沒有 其他的關係。

線性結構(表) - 結構中的元素 是一對一的前後關係。(重點)

樹型結構(樹) - 結構中的元素 是一對多的父子關係。

網狀結構 - 結構中的元素 是多對多的交叉對映關係。

物理結構的分類:

順序結構 - 資料存放在一片連續的記憶體位址中(不間斷)。

鏈式結構 - 鏈式結構的元素存放在不連續的記憶體位址中,因此儲存時按節點儲存,而不只是儲存資料。乙個節點包括資料和下乙個節點的位址。

優缺點:

順序結構:隨機訪問方便,插入刪除效率低,空間使用率低。

鏈式結構:插入刪除方便,隨機訪問效率低,空間使用率高。

順序結構 鏈式結構 互補。

陣列是乙個常指標,不能改變指向的指標

完全二叉樹 就是 前面n-1 是滿的,最後一層可以不滿,但是要 從左向右 連續排列。

快速排序

void quick_sort(int *a,size_t begin,size_t end)

for(;!( j<=m || p>a[j]);--j);

if(j>m)

}a[m]=p;

if(i-begin>1)

if(end-j>1)

}自學部分

string 和array都是一種容器

容器運用時機 

vector

內部結構最簡單,允許隨機訪問

deque

經常在序列頭部和尾部安插和移動元素

list

經常在容器中執行元素的安插,移動和移除

set,multiset

經常需要根據某個準則來搜尋元素

容器內的型別 

container::value_type

都支援container::key_type

關聯式容器支援,set,map

container::key_compare

關聯式容器支援

container::value_compare

關聯式容器支援

explicit container::container(const compfunc& op)

以op為準則產生乙個容器

關聯式容器支援

explicit container::container(const container& c)

都支援 

explicit container::container(const container& c)

vector,deque,list支援

container::container (size_type num,const t& value)

vector,deque,list,string支援

string不是引用傳值

container::container(inputiterator beg,inputiterator end)

都支援container::container(inputiterator beg,inputiterator end,const compfunc& op)

關聯式容器支援

bool container::empty比 size()==0快

size_type container::capacity() const

返回重新分配前最多元素個數

vector,strin支援

void  container::reserve(size_type num)

vector,string支援 

count,find,lower_bound,upper_bound,equal_range,key_comp,value_compare

void container::assign(size_type num,const t& value)

關聯式容器支援

void container::assign(inputiterator begin,inputiterator end)

vector,deque,list ,string支援

atvector,deque,string支援

operator

vector,deque,string支援

t& map::operator(const key_type& key)

map支援

front(),back()

vector,deque,list支援

如果容器為空 rend()==rbegin()

iterator container::insert(const t& value)

paircontainer::insert(const t& value)

關聯式容器+string支援

序列式操作一般返回void版本

關聯式操作一般返回 iterator版本

void list::remove 只有list支援

void container::resize(size_type num,t value)

vector,deque,list,string支援

配置器 

...迭代器 

*iter=42 等同於 iter=42

advance(inputiterator &pos,dist n)

pos前進n

c 培訓周總結3

培訓部分 巨集頭檔案格式 ifndef h h fsd define h h fsd x endif ifdef ifndef elif elif else endif static在當前檔案中有效 結構體指標只開闢乙個指標的空間 c語言的結構體不能包括函式 結構體的記憶體對齊 不足就多分配4k.補...

c 培訓周總結7

培訓部分 unix網路程式設計 socket本身是乙個檔案描述符 socket.h int socket int domain,int type,int protocol 通常情況下protocol是0 domain af inet為網路,af unix為本地 af 後端巨集為pf sock str...

三周C 總結4 函式

如何只遍歷一次陣列,從中找到兩個最小的數.public static void findmin int arr int min1,min2 if arr 0 arr 1 min1 1 min2 0 else arr min1 arr min2 1.c 函式只能在某個類中定義,函式不能巢狀定義即在某個...