(1).試編寫演算法將帶頭結點單鏈表就地逆置,所謂「就地」是指輔助空間為o(1)
【解析】
此問題有兩種解法。
a 把頭節點摘下來,然後用頭插法建鍊錶就形成所謂的就地逆置
b 依次遍歷將指標反轉,不過最後乙個節點需要注意一下
兩演算法時間複雜度都是o(n),空間都是o(1)
【演算法】
第一種演算法:
//就地反轉
int linklistrerverse(linklist *head)
return 0;
}
完整例子:
#include#includetypedef struct node
linklist;
//就地反轉
int linklistrerverse(linklist *head)
return 0;
}//輸出資料
int linklistprintf(linklist *head)
printf("\n");
return 0;
}//建立鍊錶
int linklistcreate(linklist *head,int n)
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 演算法 第一種演算法 cpp view ...
ceph若干問題
ceph health可以檢視ceph集群健康狀況 ceph df 可以檢視儲存的總使用率與各pool的使用率 ceph osd df 可以檢視各osd的使用率 ceph s 或 ceph status 可以檢視集群整體狀態 首先,我們要知道ceph的osd的位址 ceph osd tree可以檢視...