Blogga qaytish

Leetcode Go da

9-masalani ishlaymiz

Masalaning berilishi:

Given an integer x, return true if x is a palindrome, and 
false otherwise.
 
Example 1:
Input: x = 121
Output: true
Explanation: 121 reads as 121 from left to right and 
from right to left.

Example 2:
Input: x = -121
Output: false
Explanation: From left to right, it reads -121. 
From right to left, it becomes 121-. Therefore it 
is not a palindrome.

Example 3:
Input: x = 10
Output: false
Explanation: Reads 01 from right to left. Therefore it is not a palindrome.
 
Constraints:
-231 <= x <= 231 - 1

Dastlab berilgan x integerni -122 ni 221- bolib qolmasligi uchun 0 dan katta xolatiga tekshiramiz, yani faqat musbat sonlarni olamiz.

Keyin if dan o'tgan sonni for sikliga solamiz

Buyerda dastlab biz berilgan x sonini %10 qilganmiz, bu nima qiladi o'zi ?

Buyerda masalan x = 1234 bolsa, manashu formula boyicha 1234 ni 10 ga boladi va % bu qoldiqni olib beradi, yani aniqlab beradi , 10 ga bolganda qoldiq har doim oxirgi son bo'ladi

va uni olamiz, sonni 10 ga kopaytiramiz nima uchun, chunki ung joy kerak

reverseNum dastlab bizda 0 edi keyin u for siklida sonni 10 ga bolamiz oxirgi 4 ni olamiz

shunda 0*10 + 4 = 4 -> bu birinchi siklning javobi

Sikl aylanishda davom etar ekan bizning sonimiz 123 bolib qoldi nima uchun ? chunki /10 qildik va oxirgi xonadagi sonni olib tashlaydi, sabab son egallab turgan xoanni bittaga qisqartirdi va 1234 emas 123 uchun joy qoldi

keyingi safar sikl yana aylanadi va 123 ning 3 ni olamiz

4*10 + 3 manashuyerda bir chalkashlik bor agar bizda nima uchun 10 ga kopaytirldi deydigan bolsa 4 + 3 bolib qolsa 7 bolar edi yani 3 ni 4 ning yoniga yozish uchun 3ga 4 ning oldidan bir xona joy qilib berish kerak bolar edi shuning uchun uni daslab 10 ga kopaytrib oldik..... shu tartibda sonimiz aylanadi

va 4321 xosil boladi

masalamizda bunday shart bor edi Palindrome xolatida son ozgarmasligi kerak masalan 121 teskarisga 121 boladi

shuning uchun daslab berilgan sonni originNum deb tenglab olganmiz va uni for siklidan xosil bolgan songa tekshiramiz agar ikkala son teng bolsa true bolmasam false qaytaradi

yani 10 ning 01 bolib qolishini qanoatlantiradi va oxirida agar boshida berilgan son va xozil bolgan sonlar == bolsagina true bolmasam avtomatik false qaytadi

👍 0 ❤️ 0 🔥 0

Izohlar 0

Izoh qoldirish uchun kiring yoki ro'yxatdan o'ting.

Hali izoh yo'q. Birinchi bo'ling!

Boshqa maqolalar

Shunga o'xshash

Barchasi →