關於算法的空間複雜度和時間複雜度定義

空間複雜度 指的是 在排序過程當中臨時額外佔的空間大小的量度 記作S(n)=O(f(n))算法

時間複雜度 指的是算法運行時間,通常較爲複雜的排序 的時間複雜度 都爲 O(nlgn)  ,而基礎的(冒泡排序,選擇排序,插入排序)大多數爲 n^2,  希爾排序的 爲n^1.3數組

帶哨兵的插入排序中的哨兵元素有兩個做用:
一、暫時存放待插入的元素
二、防止數組下標越界,當待插入的元素小於已排序的子數組中的最小元素時,j=-1,越界,而採用哨兵,arr[0]<arr[j],當j=0時,就結束循環,不會出現越界(for循環只有一次判斷,提升了效率)。排序

相關文章
相關標籤/搜索