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

2022-09-24 21:06:10 字數 882 閱讀 9075

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

如: 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最大遞減數演算法問題分析

本文位址:

演算法基礎 最大遞減數問題(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.實現 package huawei ...