Python常用的四種數值交換方式!
近期,有一個同學在面試Python工程師的時候,面試官問了這樣一個問題:你能用幾種方法來實現交換兩個變數的值?在沒有看文章之前,各位小夥伴知道幾種方法呢?小編為大家整理了四種數值交換方式,下面我們一起來看看吧。
方法1、透過新新增中間變數temp的方式,這個方式是最簡單的,每個語言都適用。
def swap(a,b):
temp=a
a=b
b=temp
print(a,b)
方法2、Python獨有的方法,一行程式碼就能搞定,直接將兩個元素放到元組。
def swap2(a,b):
a,b=b,a
print(a,b)
方法3、這個方法採用加減法來交換。不考慮效率,能達到交換的效果就行
def swap3(a,b):
a=a+b
b=a-b
a=a-b
print(a,b)
方法4、採用異或運算,這個是不是看起來比較高大上。透過按位異或運算來交換兩個變數的值,可以減少變數的定義。
按位異或運算即計算機會把十進位制數轉化為二進位制數,並對二進位制數進行從右到左從1開始編數,然後比較兩個二進位制數值相同位置的數,如果相同結果為0,不同時結果為1。
“1^1=01^0=10^0=0°
如:10101111
則結果為0101
def swap4(a,b):
a=a^b
b=a^b
a=a^b
print(a,b)
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/69952527/viewspace-2913946/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- 數值變數交換常用方法變數
- python中定義引數的四種方式Python
- 使用位運算、值交換等方式反轉java字串-共四種方法Java字串
- python 交換兩個變數的方式Python變數
- 淺談iOS常用的幾種傳值方式iOS
- SFP+光模組與交換機四種搭配使用方式
- python字典的四種遍歷方式Python
- C語言交換兩個變數的值的5種基本方法C語言變數
- 5種常用的交換機SNMP配置命令
- 三種交換變數的方法變數
- Swift交換兩個變數的值Swift變數
- 如何交換兩個變數的值變數
- iOS 常用傳值方式iOS
- OAuth 2.0 的四種方式OAuth
- CSS的四種引入方式CSS
- 兩個數換值四種方法實現
- 不用第三個變數,交換變數的值變數
- C++ 引用 (交換兩個數的值)C++
- Vue的七種傳值方式Vue
- Python常用的資料儲存方式有哪些?五種!Python
- Linux下配置網路引數常用的兩種方式!Linux
- Java 常用的 4 種加密方式Java加密
- JSP向後臺傳遞引數的四種方式JS
- Spark的四種部署方式概括Spark
- Java 建立類的四種方式Java
- mysql啟動的四種方式MySql
- Mysql的四種啟動方式MySql
- spring的四種注入方式Spring
- Python面試技巧-交換兩個元素的值Python面試
- C++取反交換兩個數的值C++
- js獲取數字陣列最大值的幾種方式JS陣列
- Python 四種數值型別(int,long,float,complex)區別及轉換Python型別
- 記住Python變數型別的三種方式Python變數型別
- 淺談Python變數賦值的三種方法!Python變數賦值
- 提高交換機網路效能的幾種方式探討
- 詳解vue 路由跳轉四種方式 (帶引數)Vue路由
- SQL中的四種連線方式SQL
- JavaScript中的四種列舉方式JavaScript