一、題目:打印1到最大的n位數 題目:輸入數字n,按順序打印出從1最大的n位十進制數。比如輸入3,則打印出1、2、3一直到最大的3位數即999。 二、不同的解法 2.1 不假思索的解法 最容易想到的辦法是先求出最大的n位數,然后用一個循環從1開始逐個打印 ...
本文參考自 劍指offer 一書,代碼采用Java語言。 更多: 劍指Offer Java實現合集 題目 輸入數字n,按順序打印出從 最大的n位十進制數。比如輸入 ,則打印出 一直到最大的 位數即 。 思路 陷阱:n過大時是大數問題,不能簡單用int或者long數據輸出,需要采用字符串或者數組表達大數。 解決方法:通過字符數組char 來進行輸出數字。 方法一: 在字符串表達的數字上模擬加法 把字 ...
2018-09-18 09:25 2 1225 推薦指數:
一、題目:打印1到最大的n位數 題目:輸入數字n,按順序打印出從1最大的n位十進制數。比如輸入3,則打印出1、2、3一直到最大的3位數即999。 二、不同的解法 2.1 不假思索的解法 最容易想到的辦法是先求出最大的n位數,然后用一個循環從1開始逐個打印 ...
本文參考自《劍指offer》一書,代碼采用Java語言。 更多:《劍指Offer》Java實現合集 題目 輸入一個鏈表的頭結點,從尾到頭反過來打印出每個結點的值。結點定義如下: 思路 結點遍歷順序只能從頭到尾,但是輸出的順序卻為從尾到頭,是典型的“后進先出”問題 ...
本文參考自《劍指offer》一書,代碼采用Java語言。 更多:《劍指Offer》Java實現合集 題目 把n個骰子扔在地上,所有骰子朝上一面的點數之和為s。輸入n,打印出s的所有可能的值出現的概率。 思路 對於n個骰子,要計算出每種點數和的概率,我們知道投擲n個骰子 ...
本文參考自《劍指offer》一書,代碼采用Java語言。 更多:《劍指Offer》Java實現合集 題目 假設把某股票的價格按照時間先后順序存儲在數組中,請問買賣交易該股票可能獲得的利潤是多少?例如一只股票在某些時間節點的價格為{9, 11, 8, 5,7, 12, 16 ...
題目描述 給定一個數組arr,返回子數組的最大累加和 例如,arr = [1, -2, 3, 5, -2, 6, -1],所有子數組中,[3, 5, -2, 6]可以累加出最大的和12,所以返回12. 題目保證沒有全為負數的數據 ...
本文參考自《劍指offer》一書,代碼采用Java語言。 更多:《劍指Offer》Java實現合集 題目 求1+2+…+n,要求不能使用乘除法、for、while、if、else、switch、case等關鍵字及條件判斷語句(A?B:C)。 思路 不能使用乘除 ...
本文參考自《劍指offer》一書,代碼采用Java語言。 更多:《劍指Offer》Java實現合集 題目 輸入一個矩陣,按照從外向里以順時針的順序依次打印出每一個數字。 思路 每次打印矩陣最外面的一圈(用方法printMatrixInCircle()表示),每次都是這個操作 ...
本文參考自《劍指offer》一書,代碼采用Java語言。 更多:《劍指Offer》Java實現合集 題目 在一個m×n的棋盤的每一格都放有一個禮物,每個禮物都有一定的價值(價值大於0)。你可以從棋盤的左上角開始拿格子里的禮物,並每次向左或者向下移動一格直到到達棋盤的右下角。給定一個 ...