【面試題33】把數(shù)組排成最小的數(shù)

【題目】輸入一個(gè)正整數(shù)數(shù)組,把數(shù)組里所有數(shù)字拼接起來(lái)排成一個(gè)數(shù),打印能拼接出的所有數(shù)字中最小的一個(gè)。例如輸入數(shù)組{3,32,321},則打印出這三個(gè)數(shù)字能排成的最小數(shù)字為321323。
【思路】將相鄰兩個(gè)數(shù) 3,32 轉(zhuǎn)化為“332” “323”比較
【代碼】

class Solution:
  def PrintMinNumber(self, numbers):
      # write code here
      if not numbers:
          return ""
      numstr = map(str,numbers)
      l = lambda n1,n2:int(n1+n2)-int(n2+n1)
      numsort = sorted(numstr,cmp=l)
      res = "".join(i for i in numsort)
      return res
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請(qǐng)結(jié)合常識(shí)與多方信息審慎甄別。
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡(jiǎn)書系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

  • 題目:輸入一個(gè)正整數(shù)數(shù)組,把數(shù)組里所有數(shù)字拼接起來(lái)排成一個(gè)數(shù),打印能拼接處的所有數(shù)字最小的一個(gè)。例如輸入數(shù)組{3,...
    Felicia1993閱讀 214評(píng)論 0 0
  • 題目:輸入一個(gè)正整數(shù)數(shù)組,把數(shù)組里所有數(shù)字拼接起來(lái)排成一個(gè)數(shù),打印能拼接處的所有數(shù)字中最小的一個(gè)。例如輸入數(shù)組{3...
    qmss閱讀 337評(píng)論 0 0
  • 題目描述: 輸入一個(gè)正整數(shù)數(shù)組,把數(shù)組里所有數(shù)字拼接起來(lái)排成一個(gè)數(shù),打印能拼接出的所有數(shù)字中最小的一個(gè)。例如輸入數(shù)...
    夏臻Rock閱讀 1,797評(píng)論 0 2
  • 本系列導(dǎo)航:劍指offer(第二版)java實(shí)現(xiàn)導(dǎo)航帖 面試題45:把數(shù)組排列成最小的數(shù) 題目要求:輸入一個(gè)正整數(shù)...
    ryderchan閱讀 947評(píng)論 0 0
  • 今天又和那個(gè)學(xué)生較勁了,此刻心里依然很不舒服。 明明是他貪玩沒(méi)有抓緊時(shí)間完成練習(xí),已經(jīng)完成的同學(xué)在背課文,他嫌吵大...
    梧桐瀟雨xt閱讀 239評(píng)論 2 0

友情鏈接更多精彩內(nèi)容