主要是利用了樹查詢的思想,所以時間複雜度為樹的深度,樹的深度性質:具有n個結點的完全二叉樹的深度為[log2n] + 1,由此匯出二分查詢的時間複雜度為o(logn),最好的情況就是o(1),剛好就在mid位置
最好o(logn),當資料時有序狀態,達到最差,稱為斜樹,所以最差時間複雜度為o(n)
如果沒有碰撞的時候,時間複雜度為o(1),當數字發生全部碰撞時,有最差時間複雜度為o(n)
最好o(logn),當資料時有序狀態,達到最差,稱為斜樹,所以最差時間複雜度為o(n)
平衡二叉樹,是一種二叉排序樹,平衡是因為它的每乙個結點的左子樹和右子樹的高度差至少等於1。
由於二叉排序樹在非平衡狀態時的時間複雜度是o(n),最好的時候就是o(logn),而平衡二叉樹就是為了解決二叉排序樹的非平衡而產生的忙所以它的查詢,插入,刪除的時間複雜度都為o(logn)
查詢演算法和排序演算法的歸納總結
查詢演算法 有序查詢 時間複雜度 o n 二分查詢 時間複雜度 o logn 有序查詢演算法實現 public int search int searcher 二分查詢演算法實現 public int binary search int searcher return 1 排序演算法 氣泡排序 時間...
查詢演算法和樹總結
主要是利用了樹查詢的思想,所以時間複雜度為樹的深度,樹的深度性質 具有n個結點的完全二叉樹的深度為 log2n 1,由此匯出二分查詢的時間複雜度為o logn 最好的情況就是o 1 剛好就在mid位置 最好o logn 當資料時有序狀態,達到最差,稱為斜樹,所以最差時間複雜度為o n 如果沒有碰撞的...
演算法歸納(一)
1 給定乙個陣列arr,和乙個數num,請把小於等於num的數放在陣列的左邊,大於num的數放在陣列的右邊。要求額外空間複雜度o 1 時間複雜度o n public class demo1 5 public static void sort int arr,int num print arr pub...