自拍偷在线精品自拍偷,亚洲欧美中文日韩v在线观看不卡

讓我們一起學(xué)會反轉(zhuǎn)整數(shù)

開發(fā) 前端
給定一個有符號的 32 位整數(shù) x,返回其數(shù)字反轉(zhuǎn)的 x。 如果反轉(zhuǎn) x 導(dǎo)致值超出有符號的 32 位整數(shù)范圍 -$2^31$ <= x <= $2^31$ - 1,則返回 0。

[[436853]]

本文轉(zhuǎn)載自微信公眾號「Swift社區(qū)」,作者Swift君。轉(zhuǎn)載本文請聯(lián)系Swift社區(qū)公眾號。

難度水平:中等

1. 描述

給定一個有符號的 32 位整數(shù) x,返回其數(shù)字反轉(zhuǎn)的 x。 如果反轉(zhuǎn) x 導(dǎo)致值超出有符號的 32 位整數(shù)范圍 -$2^31$ <= x <= $2^31$ - 1,則返回 0。

假設(shè)環(huán)境不允許存儲 64 位整數(shù)(有符號或無符號)。

2. 示例

示例 1

  1. 輸入: x = 123 
  2.  
  3. 輸出: 321 

示例 2

  1. 輸入: x = -123 
  2.  
  3. 輸出: -321 

示例 3

  1. 輸入: x = 120 
  2.  
  3. 輸出: 21 

示例 4

  1. 輸入: x = 0 
  2.  
  3. 輸出: 0 

約束條件:

  1. -$2^31$ <= x <= $2^31$ - 1 

3. 答案

  1. class ReverseInteger { 
  2.     func reverse(_ x: Int) -> Int { 
  3.         var res = 0 
  4.         var x = x 
  5.         while x != 0 { 
  6.             if res > Int(Int32.max) / 10 || res < Int(Int32.min) / 10 { 
  7.                 return 0 
  8.             } 
  9.             res = res * 10 + x % 10 
  10.             x = x / 10 
  11.         } 
  12.         return res 
  13.     } 
  • 主要思想:使用 % 10 反向迭代數(shù)字的數(shù)字,并使用 * 10 相應(yīng)地更新結(jié)果。

 

  • 注意:適時處理整數(shù)溢出。
  • 時間復(fù)雜度: O(n)
  • 空間復(fù)雜度: O(1)

 

責(zé)任編輯:武曉燕 來源: Swift社區(qū)
相關(guān)推薦

2022-03-31 18:59:43

數(shù)據(jù)庫InnoDBMySQL

2021-08-27 07:06:10

IOJava抽象

2021-12-29 08:27:05

ByteBuffer磁盤服務(wù)器

2022-03-08 17:52:58

TCP格式IP

2021-07-15 07:23:28

Singlefligh設(shè)計

2022-06-26 09:40:55

Django框架服務(wù)

2022-02-14 07:03:31

網(wǎng)站安全MFA

2016-09-06 10:39:30

Dell Techno

2022-02-14 10:16:22

Axios接口HTTP

2023-08-14 08:38:26

反射reflect結(jié)構(gòu)體

2022-07-10 23:15:46

Go語言內(nèi)存

2023-08-02 08:35:54

文件操作數(shù)據(jù)源

2022-08-01 07:57:03

數(shù)組操作內(nèi)存

2021-07-31 11:40:55

Openresty開源

2012-04-14 20:47:45

Android

2021-12-16 12:01:21

區(qū)塊鏈Libra貨幣

2021-11-09 23:54:19

開發(fā)SMI Linkerd

2014-02-25 08:59:14

2022-12-05 09:10:21

2021-03-18 00:04:13

C# 類型數(shù)據(jù)
點贊
收藏

51CTO技術(shù)棧公眾號