演算法基礎 最大遞減數問題(Golang實現)

2022-10-10 19:57:12 字數 840 閱讀 6871

給出乙個非負整數,找到這個非負整數中包括的最大遞減數。乙個數字的遞減數是指相鄰的數字從大到小排列的數字。

如: 95345323,遞減數有:953,95,53,53,532,32, 那麼最大的遞減數為953。

假設輸入的數字為負數,返回-1。

假設找不到遞減數,也返回-1.  

**實現:

package huawei

import (

"fmt"

"sort"

"strconv"

)func test5base()

fmt.println("max:", max)

}//獲取num的全部遞減數

func getdegressivenums(num int) int

} degressivenums := make(int, 0)

numstr := strconv.itoa(num)

length := len(numstr)

//長度為i的子串

for i := 2; i < length; i++

} }return degressivenums

}//推斷數字num是否是遞減數

func isdegressive(num int) bool

return sort.intsaresorted(weishu)

}//獲取乙個slice中最大的數

func getmax(nums int) int

max := nums[0]

for i := 1; i < len(nums); i++

} return max

}

演算法基礎 最大遞減數問題(Golang實現)

給出乙個非負整數,找到這個非負整數中包含的最大遞減數。乙個數字的遞減數是指相鄰的數字從大到小排列的數字。如 95345323,遞減數有 953,95,53,53,532,32,那麼最大的遞減數為953。如果輸入的數字為負數,返回 1。如果找不到遞減數,也返回 1.實現 package huawei ...

演算法基礎 最大遞減數問題(Golang實現)

給出乙個非負整數,找到這個非負整數中包括的最大遞減數。乙個數字的遞減數是指相鄰的數字從大到小排列的數字。如 95345323,遞減數有 953,95,53,53,532,32,那麼最大的遞減數為953。假設輸入的數字為負數,返回 1。假設找不到遞減數,也返回 1.實現 package huawei ...

Golang最大遞減數演算法問題分析

給出乙個非負整數,找到這個非負整數中包含的最大遞減數。乙個數字的遞減數是指相鄰的數字從大到小排列的數字。如 95345323,遞減數有 953,95,53,53,532,32,那麼最大的遞減數為953。如果輸入的數字為負數,返回 1。如果程式設計客棧找不到遞減數,也返回 1.實現 複製 如下 pac...