單鏈表的若干問題

2021-06-18 17:06:32 字數 898 閱讀 4755

(1)試編寫演算法將帶頭結點單鏈表就地逆置,所謂「就地」是指輔助空間為o(1)

【解析】

此問題有兩種解法。

a 把頭節點摘下來,然後用頭插法建鍊錶就形成所謂的就地逆置

b 依次遍歷將指標反轉,不過最後乙個節點需要注意一下

兩演算法時間複雜度都是o(n),空間都是o(1)

【演算法】

第一種演算法:

[cpp]view plain

copy

//就地反轉

intlinklistrerverse(linklist *head)  

return

0;  

}  

完整例子:

[cpp]view plain

copy

#include

#include

typedef

struct

node  

linklist;  

//就地反轉

intlinklistrerverse(linklist *head)  

return

0;  

}  //輸出資料

intlinklistprintf(linklist *head)  

printf("\n"

);  

return

0;  

}  //建立鍊錶

intlinklistcreate(linklist *head,

intn)  

return

0;  

}  int

main()  

return

0;  

}  

單鏈表的若干問題

1 試編寫演算法將帶頭結點單鏈表就地逆置,所謂 就地 是指輔助空間為o 1 解析 此問題有兩種解法。a 把頭節點摘下來,然後用頭插法建鍊錶就形成所謂的就地逆置 b 依次遍歷將指標反轉,不過最後乙個節點需要注意一下 兩演算法時間複雜度都是o n 空間都是o 1 演算法 第一種演算法 就地反轉 int ...

單鏈表的若干問題

1 試編寫演算法將帶頭結點單鏈表就地逆置,所謂 就地 是指輔助空間為o 1 解析 此問題有兩種解法。a 把頭節點摘下來,然後用頭插法建鍊錶就形成所謂的就地逆置 b 依次遍歷將指標反轉,不過最後乙個節點需要注意一下 兩演算法時間複雜度都是o n 空間都是o 1 演算法 第一種演算法 就地反轉 int ...

ceph若干問題

ceph health可以檢視ceph集群健康狀況 ceph df 可以檢視儲存的總使用率與各pool的使用率 ceph osd df 可以檢視各osd的使用率 ceph s 或 ceph status 可以檢視集群整體狀態 首先,我們要知道ceph的osd的位址 ceph osd tree可以檢視...