recursion

    1熱度

    2回答

    今年10月我開始了我的生物信息學碩士學位,因爲前生物學家從一段代碼中發現遞歸方程非常困難。如果有人能向我解釋這一點,我將非常感激。 如何從這段代碼中找到遞歸方程? procedure DC(n) if n<1 then return for i <- 1 to 8 do DC(n/2) for i <- 1 to n³ do dummy <- 0 我的猜測是T(N

    4熱度

    1回答

    我有一些麻煩弄清楚下面代碼的最壞時間複雜度。 (這不是一門功課,看https://leetcode.com/problems/integer-replacement/description/。) int recursion (int n) { if (n == 1) return 0; if (n % 2 == 0) { return recursion

    2熱度

    2回答

    我有這樣的列表中的一個列表:[[A,B],[B,C],[C,D],我想有[A,B,C ]。 我的代碼是: unMakeTuple([],_). unMakeTuple([[A,_]|T],Ret):- insertOnList(A,Ret,Ret1), nl,write(Ret), nl,write(Ret1), unMakeTuple(T,Ret

    -1熱度

    2回答

    問:關於使用遞歸和返回的二叉搜索樹遍歷,我有疑問。我必須按照按升序排列鍵的BST,然後「倒轉」它,這樣所有鍵都按降序排列,正如您在圖片中看到的那樣。 根據我的下面的代碼的瞭解,我認爲步驟是: ->reverseKeys (10) ->reverseKeys (2) ->reverseKeys (null): return ->reversekeys(null): return

    0熱度

    1回答

    我崩潰了我的腦袋以瞭解錯誤在這個批處理腳本中的位置,用於通過遞歸函數「pow」計算給定數量的pow,多次(在腳本中設置功率爲3^3) 我得到的錯誤是: 「order1」未被識別爲內部或外部命令,可操作程序或批處理文件。 「base22」不被識別爲內部或外部命令,可操作程序或批處理文件。 這兩個錯誤都以順序行顯示,無數次直到「批量遞歸超過堆棧限制」語句停止遞歸的比較。 有人能夠在腳本中找到錯誤? @

    -1熱度

    5回答

    我對遞歸函數中增加值的功能有疑問。 當我使用: counter++不起作用 但是當我使用counter + 1它正常工作。 我還發現它的另一種工作方式:++counter,但我真的不明白在櫃檯前使用++有什麼不同。 實施例: printEachName = (companyNames, newPeople, counter, callback) => { if (companyNames

    3熱度

    1回答

    我正在使用遞歸功能來刪除字符串中的重複字符。問題是,我不知道如何繼續傳遞一個字符串,以保持比較相鄰字符而不用切斷字符串。這是我到目前爲止有: string stringClean(const string& str) { string s1 = str; if (/*first char == next char*/) s1.at(/*first char*/)

    -2熱度

    1回答

    該代碼基本上計算nCr打印帕斯卡的三角形。 #include <stdio.h> int nCr(int n,int r){ if (r == 0 || r == n || n == 1 || n == 0){ return 1; } else{ return nCr(n-1,r) + nCr(n-1,r-1); } } 這個函數如何變成迭代版本?

    0熱度

    1回答

    這可能是一個簡單/基本的問題,但我有麻煩抓住邏輯。 我想使用遞歸來計算列表的長度。 想象一下,對於這個問題有一個列表[a,b,c,d]。 我們有一個基本的子句和遞歸子句,如下所示。 基本條款總是處理最基本的問題,在這種情況下是一個空的列表。遞歸子句試圖解決列表中大小爲N-1的問題。 listLength([],0). listLength([Head|Tail], Count):-

    0熱度

    2回答

    我正在學習php並希望嘗試遞歸。我已經做了一個功能,它得到一個字,如果它的長度超過30個字符,它分成兩半。而且我做了一個遞歸,所以如果其中的一半超過30個單詞,它就會將其分開等等。 function breakLongWords($val) { $array = explode(" ", $val); foreach ($array as $key => $word) {