演算法設計與分析 交換元素

2021-09-11 07:52:09 字數 319 閱讀 1694

這道題目是一道考研題,在老師給的幻燈片裡我沒找到,,所以就憑著印象描述一遍了:

給定乙個順序表,把表裡元素能被5整除的放到表的後半段,不能被整除的放到前半段,要求用盡量少的時間和空間,並給出時間和空間複雜度。

這道題還是可以的,看完我就有思路了:前半段,後半段,快排!!

用兩個指標分別指著表的兩端,就像一趟快排那樣,能被5整除就交換,不能就前進,省時又省力

後來老師說先看題目要求,有沒有要求排序以及穩定性,都沒有,說明這道題就是特意用這個演算法做的,不然也不太好弄呀

時間複雜度o(n),(輔助)空間複雜度o(1),因為只額外需要乙個用來交換資料的空間

演算法設計與分析

輸入輸出 確定性有窮性 np類問題是非確定性計算模型下的易驗證問題類。所有可以在多項式時間內求解的判定問題構成p類問題 1 二分搜尋技術 二分搜尋演算法的基本思路是對給定已排好序的n個元素a 0 n 1 在這n個元素中找出乙個特定元素x。運用分治的思想,將n個元素以n 2為中心對半分。if x a ...

演算法分析與設計

分析,此題可以用動態規劃來做。子問題為 max i max i 1 0 max i 1 nums i nums i max i 表示以nums i 結尾的子串的最大和,最後返回最大的那個即為所求,複雜度為o n class solution return max 另一種實現方法,更加簡潔,即從前往後...

演算法設計與分析

ylbtech miscellaneos 演算法設計與分析 a,返回頂部1,演算法設計與分析 是2009年國防工業出版社出版的圖書,作者是張德富。書主要取材於演算法設計與分析領域的經典內容,並介紹了演算法設計的發展趨勢。內容主要包括非常經典的演算法設計技術,例如遞迴與分治 動態規劃 貪心 回溯 分支...