每組測試第1行包含2個正整數n和
m(≤1
000),分別是插入元素的個數、以及需要列印的路徑條數。下一行給出區間[-10000, 10000]內的
n個要被插入乙個初始為空的小頂堆的整數。最後一行給出
m個下標。
對輸入中給出的每個下標i
,在一行中輸出從h[i]
到根結點的路徑上的資料。數字間以1個空格分隔,行末不得有多餘空格。
5 3
46 23 26 24 10
5 4 3
24 23 10
46 23 10
26 10
#define maxn 1001
#define minh -10001
void create();
void insert(int x);
int h[maxn], size; // 全域性變數, 堆的陣列和大小
int main()
for(int k=0; k>j;
cout<1)
h[i] = x;
}
資料結構筆記(十五) 陣列原理
從本質上講,陣列與順序表 鍊錶 棧和佇列一樣,都用來儲存具有 一對一 邏輯關係資料的線性儲存結構。只因各程式語言都預設將陣列作為基本資料型別,使初學者對陣列有了 只是基本資料型別,不是儲存結構 的誤解。不僅如此,陣列和其他線性儲存結構不同,順序表 鍊錶 棧和佇列儲存的都是不可再分的資料元素 如數字 ...
十五 redis衍生資料結構之GEO
geo是redis3.2新增的乙個特性。用於計算地理位置資訊相關的一些功能。geo可以用於儲存經緯度 計算兩地之間的距離 範圍計算等。geo其實是使用zset來實現的。比如在刪除的時候可以使用zset的相關命令 zram key member 命令geoadd key longitude latit...
資料結構與演算法 十五 排序演算法
排序演算法是最基本的演算法之一,也是平時最常見 最常用的演算法。對於乙個未排序的序列,其中a 2 和a 5 的關鍵字值相等,經過排序後,若原a 2 的位置仍在原a 5 之前,那麼稱該排序方法是穩定的 若原a 5 的位置反在原a 2 的前面,那麼稱該排序方法是不穩定的。只要有一組關鍵字發生類似的情況,...