孔老有雲:溫故而知新!知識技術也是孰能生巧,時間一久不接觸就有點生疏了。首先從最初的最簡單的資料結構——順序表開始吧!
namespace datastructurelearning.inte***ce
}
訪問(類似陣列訪問):data[index]
類似賦值:data[index]=iteam
遍歷:即迴圈下標
using system;
using system.collections.generic;
using system.linq;
using system.text;
using datastructurelearning.inte***ce;
namespace datastructurelearning.implementclass
set}
public
int lastindex
}public
int maxsize
}#endregion
#region ------構造方法-----
public
linearlist(int size)
#endregion
#region ------成員方法-----
//求順序表的長度
public
intgetlength()
//清空
public
void
clear()
//判斷順序表是否為空
public
bool
isempty()
else
} //是否為滿
public
bool
isfull()
else
}public
void
data[++lastindex] = item;
}//在順序表的第i個資料元素的位置插入乙個資料元素
public
void
insert(t item, int i)
if(i<1 || i>lastindex+2)
if (i == lastindex + 2)
else
data[i-1] = item;
}++lastindex;
}//刪除順序表的第i個資料元素即後面的每乙個元素前移一位
public t delete(int i)
if (i < 1 || i > lastindex+1)
if (i == lastindex+1)
else
}--lastindex;
return tmp;
}//獲得順序表的第i個資料元素
public t getelem(int i)
return data[i-1];
}//在順序表中查詢值為value的資料元素
public
intlocate(t value)
int i = 0;
for (i = 0; i <= lastindex; ++i)
}if (i > lastindex)
return i;
}//順序表倒置
public
void
reverse(linearlist l)
}// 顯示元素
public
void
displayitems()
}//合併兩個排好序的順序表
public linearlist merge(linearlist la, linearlist lb)
}//a表中還有資料元素
while (i <= (la.getlength() - 1))
//b表中還有資料元素
線性表是最簡單、最基本、最常用的資料結構,線性表的特點是資料元素之間存在一對一的線性關係,也就是說,除第乙個和最後乙個資料元素外,其餘資料元素都有且只有乙個直接前驅和直接後繼。
索引器(indexer)是c#引入的乙個新型的類成員,它使得物件可以像陣列那樣被方便,直觀的引用。索引器非常類似於我們前面講到的屬性,但索引器可以有引數列表,且只能作用在例項物件上,而不能在類上直接作用
資料結構之順序表
首先是標頭檔案seqlist.h ifndef seqlist h define seqlist h include includeusing namespace std define elemtype int define seqlist default size 10 typedef struc...
資料結構之順序表
順序表的思想容易了解,但是 不容易掌握,我這裡根據老師所提供的 進行一下簡單的總結 這個 包含順序表的查詢,插入,刪除,建表,輸出資料 includeusing namespace std define ok 1 define error 0 define overflow 2 typedef in...
資料結構之順序表
順序表就是按照順序儲存方式儲存的線性表,該線性表的結點按照邏輯次序一次存放在計算機的一組連續的儲存單元中如下圖 由於順序表是一次存放的,只要知道了該順序表的首位址以及每個資料元素所占用的儲存長度,那麼我們就很容易計算出任何乙個資料元素 也就是資料繫結點 的位置。1 結點資料型別 public cla...