每日一道演算法題 回文數(6 15)

2021-09-24 13:04:02 字數 986 閱讀 5908

判斷乙個整數是否是回文數。回文數是指正序(從左向右)和倒序(從右向左)讀都是一樣的整數。

示例 1:

輸入: 121

輸出: true

示例 2:

輸入: -121

輸出: false

解釋: 從左向右讀, 為 -121 。 從右向左讀, 為 121- 。因此它不是乙個回文數。

示例 3:

輸入: 10

輸出: false

解釋: 從右向左讀, 為 01 。因此它不是乙個回文數。

bool ispalindrome(int x)

while(tmp)

tmp=x;

for(j=1;j<=i;j++)

if(sum==x)

return true;

else

return false;

}

①首先判斷該數的正反,如果是負數,直接返回false。回文數不可能為負數!

②接下來的步驟和整數反轉一樣。

③比較所得數和之前數的大小,如果一樣就返回true,不一樣則輸出false!

①用了pow函式,標頭檔案中也包含了檔案,但是在編譯時,gcc 一直提示如下錯誤:

/tmp/cc2vb2y4.o: in functionispalindrome': demo.c:(.text+0x82): undefined reference topow』

demo.c:(.text+0x104): undefined reference to `pow』

在編譯語句的最後面加上 -lm,問題即可解決:

gcc -o demo demon.c -lm

②unknown type name 『bool』

在c語言標準(c89)沒有定義布林型別,所以會報錯。而c99提供了乙個標頭檔案定義了bool,true代表1,false代表0。只要匯入stdbool.h,就能非常方便的操作布林型別了。

每日一道演算法題

no.1 設指標變數fron t表示鏈式佇列的隊頭指標,指標變數rear表示鏈式佇列的隊尾指標,指標變數s指向將要入佇列的結點x,則入佇列的操作序列為 a.front next s front s b.s next rear rear s crear next s rear s d.s next f...

每日一道演算法題

no.1 若有 18 個元素的有序表存放在一維陣列 a 19 中,第乙個元素放 a 1 中,現進行二分查詢,則查詢 a 3 的比較序列的下標依次為 a.1,2,3 b.9,5,2,3 c.9,5,3 d.9,4,2,3 答案 d.第一次查詢,隊首為下標1,隊尾下標18,所以是 1 18 2 9 第二...

每日一道演算法題 尋找醜數

題目 我們把只包含因子2 3和5的數稱作醜數 ugly number 例如6 8都是醜數,但14不是,因為它包含因子7。習慣上我們把1當做是第乙個醜數。求按從小到大的順序的第1500個醜數。分析 尋找乙個數是不是滿足某種數 質數,水仙數 等,最簡單的方法就是遍歷,對於任意乙個醜數必定可以寫成2 m ...