smlnj

    0熱度

    1回答

    我有困難的時候搞清楚如何使用SML 這是我迄今爲止實現2D二叉樹但我得到一個tycon不匹配。 datatype btree = Empty | Node of int * btree * btree; fun AddNode (i:int, Empty) = Node(i, Empty, Empty) | AddNode(i:int, Node(j

    0熱度

    1回答

    我該如何在SML中實現這個功能?是否有可能將內部for循環更改爲遞歸內部函數? void RecursivePermute(char str[], int k) { int j; // Base-case: All fixed, so print str. if (k == strlen(str)) printf("%s\n", str); else { //

    0熱度

    1回答

    我怎樣才能輕鬆洗牌sml中的元組列表?似乎沒有任何內置函數可以這樣做。 我假設我需要使用隨機數生成器,但如何移動列表中的項目我不知道。

    1熱度

    1回答

    我正在嘗試解決SML中的練習; 寫一個ML程序,用於包含10個問題的多選題考試。您的程序應包括以下內容: o考試 的答案 val key= 「adabcbaadb」; o爲包含學生姓名和答案的記錄(信息)輸入定義。 例如{name=」Ali」,ans=」abadccdadb」} o爲包含學生姓名和分數的元組(結果)類型定義。 例如("Ali",60) o根據需要寫出儘可能多的函數,以獲取包含3

    0熱度

    1回答

    我無法用let,in定義curried函數。 我有以下代碼: filter_many listOfFunc listOfElements = let fun allPredicate(element,[]) = true | allPredicate(element,(a,b)::xs) = a(element) andalso (allPredicate(element,

    0熱度

    2回答

    我是SML編程的新手,我創建了一個函數來從整數列表中刪除原子A的出現。這個列表可以嵌套到任何級別, 意味着我們可以擁有像[1,2,3]這樣的列表,並且我們可以擁有像[[1,2],[2,3]]這樣的列表以及像[[[ 1,2],[1,2]],[[2,3],[2,3]]]。 所以我的問題是如何檢查給定的項目是列表還是原子,因爲我到目前爲止還沒有在SMLNJ中找到任何這樣的函數? 我已經創建了一個函數來檢

    0熱度

    2回答

    我想知道在ml中使用list時如何使用列表的特定位置更改變量。例如,當我有一個列表[1,2,3,4]時,我想用列表中的5個副標題將列表更改爲[1,2,5,4]。我在想的是寫一個帶有位置,變量和列表的函數,返回帶有更新變量的新列表。例如,所以用這個代碼 change(i, var, list) = let val valup = var in (list @ [i]) end ,如果我輸入cha

    0熱度

    2回答

    我剛開始使用標準毫升,並且確實在理解這種語言的列表時遇到了一些麻煩。所以我的問題是如何縮短ml列表?例如,如果我有一個列表[1,2,3,4,5,6],我想縮短到[1,2]。什麼我有這麼遠是: fun shorten(i, l) = let val newlen = i in newlen = length l//in correct 什麼,我想要的是將我作爲用戶要縮短列表,l是列表中的位置的功

    1熱度

    1回答

    我有一個數據類型: datatype int A = leaf of int * string | trunk of int * (int A) list 說,如果我有測試:INT A,那麼我想算葉子和樹幹的測試,並返回他們爲一對夫婦: (#葉子,#中繼)。但是我不想使用遞歸。 這是我的嘗試: fun count(test: int A): int*int = ca

    0熱度

    1回答

    IM嗨嘗試使用標準庫來寫一個簡單的函數 應採取以下參數 try = fn: 'a -> 'b list option a_list = 'a list ,並把定義如下: fun all_answers try a_list = let fun acc(SOME(a), SOME(b)) = SOME([email protected]) | acc(_,_) =