code-complexity

    0熱度

    1回答

    我做了一個貪心算法,解決最小加權哈密頓迴路問題。算法總是選擇最便宜的邊緣,如果沒有辦法從當前邊緣集合中找到電路,那麼算法會下降最後的邊緣,並挑選下一個cheapest.I'm不能確定該算法的複雜性,可有人向我解釋 這裏是 HC(currentVertex,expandedVertices,path,sum,N) if size(expandedVertices)==N then

    0熱度

    2回答

    嗨讀一本調用子例程被認爲是一個常量時間操作的書,即使子例程本身不是在恆定時間內執行,但取決於輸入大小。 然後,如果我有以下的代碼: void func(int m){ int n = 10; subrout(m);//function which complexity depends on m subrout2(n);//function which complexity d

    1熱度

    1回答

    for(j=n; j>1; j/=2) ++p; for(k=1; k<p; k*=2) ++q; 在第一代碼示例,p可變屬於第一回路。所以,即使它們沒有嵌套循環,也會第二個返回日誌(n)呢?我的意思是,O(loglog(n))? for(i=n; i>0; i--){ for(j=1; j<n; j*=2){ for(k=0; k<j; k++){

    2熱度

    2回答

    假設有一個整數數組(例如爲[1 5 3 4 6])。元素根據以下規則重新排列。每個元素都可以向前跳躍(向左),並在跳過的索引中滑動元素。該過程以第二索引中的元素開始(即5)。它有跳過元素1的選擇,或者它可以保持在它自己的位置。如果它選擇跳躍,則元素1向下滑動到索引2.讓我們假設它選擇跳躍,然後我們的結果數組將會是[5 1 3 4 6]。元素3現在可以跳過1或2個位置並重復該過程。如果在一個位置上跳

    1熱度

    2回答

    不知怎的,我發現,這是更難得出比較迭代算法遞歸算法大O的複雜性。請提供一些關於我應該如何解決這兩個問題的見解。 *假設個子方法具有線性複雜 def myMethod(n) if (n>0) submethod(n) myMethod(n/2) end end def myMethod(k,n) if(n>0) submethod(k

    0熱度

    1回答

    我已閱讀通過SonarQube Metrics Definition的複雜性文檔。我還挖掘了我們定義的規則,但這些規則僅確定代碼&各自嚴重性中的錯誤。不幸的是,它沒有概述我們如何去定義自定義複雜性規則(即如果你做了x,複雜度會增加1)。 任何人都可以對此有所瞭解嗎?

    0熱度

    1回答

    我的問題是:如何通過被調用的函數觸發break;或continue;循環?事情是,我不想在循環中嵌套所有可能的條件以避免代碼複雜性。我曾想過一些僞例如: var someObjects = [...] //array with some js objects for (var i = 0; i < someObjects.length; i++) { var element = s

    1熱度

    1回答

    會是什麼樣的複雜性(大O符號)以下功能: func sortList(_ thresholdValue: Int) -> [Int] { var currentValue = thresholdValue //Values is an array of integers - [Int] var valArr = values.sorted { $0 > $1 } //

    0熱度

    1回答

    我有兩個文本文件,那是兩組字符串。 First_file.txt(X串)和Second_file.txt(N串) First_file.txt string1 string2 string3 ... stringX Second_file.txt string1 string2 string3 ... stringN 我比較這樣這兩個文件:我從First_file

    0熱度

    2回答

    我在我的算法書上發現了這個代碼,但我無法理解這個例子。 下面是代碼: for(i=1;i<n-1;i++){ for(j=n;j>i+1;j--){ if(a[j-1]>a[j]){ t=a[j-1]; a[j-1]=a[j]; a[j]=t; } } } 現在並根據預定的這樣 ,也喜歡這個 計算整個代碼的大O計算