寫出相應的子函式解決問題
問題一:
1.將順序表(a1,a2,…,an)重新排列以a1為界的兩部分:a1前面的值均比a1小,a1後面的值均比a1大(這裡假設資料元素的型別具有可比性,不妨設為整型)。
先說一下自己的想法
看到題目的第一想法就是直接把順序表從小到大排列一下,然後最先想到的就是用氣泡排序直接排序。但是其實題目並沒有要求我們要全部排列,實際上是讓我們分類。這樣的話,我們就可以直接把a1存下來。把每個數字與a1進行比較,比a1大就不動,比a1小,就先把整體後移,再把數字放到第乙個位置。
具體實現如下:
定義結構體
#include
#include
#define maxsize 100
typedef
int datatype;
//重定義 int 之後的datatype就是int
typedef
struct
sequence_list;
初始化函式
void
init
(sequence_list *slt)
具體實現函式
void
list_sort
(sequence_list *slt)
slt->a[0]
= y;}}
}
資料結構之順序表
首先是標頭檔案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...