日韩av黄I国产麻豆传媒I国产91av视频在线观看I日韩一区二区三区在线看I美女国产在线I麻豆视频国产在线观看I成人黄色短片

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 >

670. 最大交换

發布時間:2025/3/18 31 豆豆
生活随笔 收集整理的這篇文章主要介紹了 670. 最大交换 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

給定一個非負整數,你至多可以交換一次數字中的任意兩位。返回你能得到的最大值。

示例 1 :

輸入: 2736

輸出: 7236

解釋: 交換數字2和數字7。

示例 2 :

輸入: 9973

輸出: 9973

解釋: 不需要交換。

思路 使得高位(靠左的)的值更大

s[i]與后面的最大值(若有多個最大值,則取位次最小的,靠右的),交換位置

1/**
2?*?@param?{number}?num
3?*?@return?{number}
4?*/

5var?maximumSwap?=?function(num)?{
6????var?s?=?num.toString()
7
8????for(var?i=0;?i<s.length;?i++)?{
9????????var?init?=?s[i]
10????????var?max?=?init
11????????for(var?j=i+1;?j<s.length;?j++)?{
12????????????if(s[j]?>?max)?max?=?s[j]
13????????}
14????????if(max?!==?init)?{
15????????????s?=?s.replace(init,?max)
16????????????s?=?reverseString(s)
17????????????s?=?s.replace(max,?init)?//?保證replace的是位次最小的
18????????????s?=?reverseString(s)
19????????????break
20????????}
21????}
22
23????return?Number(s)
24}
25
26function?reverseString(s){
27????return?s.split('').reverse().join('')
28}

轉載于:https://www.cnblogs.com/rencoo/p/9735197.html

總結

以上是生活随笔為你收集整理的670. 最大交换的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。