LeetCode 面試必考:(n & 1) 位元運算判斷奇偶的原理詳解

更新 發佈閱讀 3 分鐘

背景 : 這個問題通常出現在哪裡?

在寫 Leetcode, 面試題或是底層程式時, 常會看見以下程式碼

if ((n & 1) == 1) {

}

1 不是十進位的 1 嗎?其實關鍵在於電腦是用二進位在運算

重要觀念 : 二進位的『最右邊』

在二進位中:

最右邊那位 (LSB) : 代表這個數字是奇數或偶數, 右邊是 1 -> 奇數, 最右邊是 0 -> 偶數

範例 : 5 的二進為為 101, 6 的二進位為 110, 7 的二進位為 111

& (AND) 運算子在做什麼?

AND 的規則只有一條 : 兩邊都是 1, 結果才是 1

實際上的 (n & 1) 發生什麼事情

11 = 1011

1 = 0001

___________

& = 0001 -> 結果是 1

(n & 1) 到底在判斷什麼?

(n & 1) 只是在檢查 n 的『最右邊那一個 bit 是不是 1』

Java 範例

public class BitCheck {
public static void main(String[] args) {
int n = 11;
if ((n & 1) == 1) {
System.out.println("奇數");
} else {
System.out.println("偶數");
}
}
}

延伸之後計算 bit 通常會這樣寫

while(n != 0) {
count += (n & 1);
n >>= 1;
}

n & 1 : 檢查目前最低位, n >>= 1 : 右移一位, 繼續檢查下一個 bit

總結

(n & 1) 是一個非常精準的位元檢查技巧。它利用了二進位與 AND 運算的特性,只關心數字的最低位, 因此能快速判斷奇偶或是否為 set bit。



留言
avatar-img
Krist
2會員
11內容數
您好, 目前是軟體工程師 Krist
Krist 的其他內容
2026/01/30
本文將詳細解釋 Stack (堆疊) 和 Queue (佇列) 這兩種重要的資料結構,深入探討它們的「先進後出」(LIFO) 與「先進先出」(FIFO) 原則,並透過疊盤子和排隊買票的生動比喻,輔以 Java 實作操作,幫助讀者輕鬆掌握其核心概念、操作方法,以及如何在實際應用中選擇合適的結構。
Thumbnail
2026/01/30
本文將詳細解釋 Stack (堆疊) 和 Queue (佇列) 這兩種重要的資料結構,深入探討它們的「先進後出」(LIFO) 與「先進先出」(FIFO) 原則,並透過疊盤子和排隊買票的生動比喻,輔以 Java 實作操作,幫助讀者輕鬆掌握其核心概念、操作方法,以及如何在實際應用中選擇合適的結構。
Thumbnail
2026/01/29
本文將深入淺出地介紹 Set 資料結構的核心概念,強調其「不重複」與「順序不重要」的特性。展示 Set 的基本用法,並探討適用於 Set 的情境,例如去除重複資料、快速查找元素以及在學生、帳號、商品編號等場景的應用。此外,文章還將說明如何取得 Set 中的元素,最後總結 Set 的關鍵特點。
2026/01/29
本文將深入淺出地介紹 Set 資料結構的核心概念,強調其「不重複」與「順序不重要」的特性。展示 Set 的基本用法,並探討適用於 Set 的情境,例如去除重複資料、快速查找元素以及在學生、帳號、商品編號等場景的應用。此外,文章還將說明如何取得 Set 中的元素,最後總結 Set 的關鍵特點。
2025/11/27
本文旨在釐清初學者常混淆的陣列 (Array) 與串列 (List) 的差異。透過生動的比喻,闡述兩者的核心特性,如固定大小、資料型態統一性、存取速度等,並針對 Java 提供了 ArrayList 與 LinkedList 的應用情境分析,幫助開發者在不同場景下做出最佳選擇。
Thumbnail
2025/11/27
本文旨在釐清初學者常混淆的陣列 (Array) 與串列 (List) 的差異。透過生動的比喻,闡述兩者的核心特性,如固定大小、資料型態統一性、存取速度等,並針對 Java 提供了 ArrayList 與 LinkedList 的應用情境分析,幫助開發者在不同場景下做出最佳選擇。
Thumbnail
看更多
你可能也想看
Thumbnail
賽勒布倫尼科夫以流亡處境回望蘇聯電影導演帕拉贊諾夫的舞台作品,以十段寓言式殘篇,重新拼貼記憶、暴力與美學,並將審查、政治犯、戰爭陰影與「形式即政治」的劇場傳統推到台前。本文聚焦於《傳奇:帕拉贊諾夫的十段殘篇》的舞台美術、音樂與多重扮演策略,嘗試解析極權底下不可言說之事,將如何成為可被觀看的公共發聲。
Thumbnail
賽勒布倫尼科夫以流亡處境回望蘇聯電影導演帕拉贊諾夫的舞台作品,以十段寓言式殘篇,重新拼貼記憶、暴力與美學,並將審查、政治犯、戰爭陰影與「形式即政治」的劇場傳統推到台前。本文聚焦於《傳奇:帕拉贊諾夫的十段殘篇》的舞台美術、音樂與多重扮演策略,嘗試解析極權底下不可言說之事,將如何成為可被觀看的公共發聲。
Thumbnail
柏林劇團在 2026 北藝嚴選,再次帶來由布萊希特改編的經典劇目《三便士歌劇》(The Threepenny Opera),導演巴里・柯斯基以舞台結構與舞台調度,重新向「疏離」進行提問。本文將從觀眾慾望作為戲劇內核,藉由沉浸與疏離的辯證,解析此作如何再次照見觀眾自身的位置。
Thumbnail
柏林劇團在 2026 北藝嚴選,再次帶來由布萊希特改編的經典劇目《三便士歌劇》(The Threepenny Opera),導演巴里・柯斯基以舞台結構與舞台調度,重新向「疏離」進行提問。本文將從觀眾慾望作為戲劇內核,藉由沉浸與疏離的辯證,解析此作如何再次照見觀眾自身的位置。
Thumbnail
本文深入解析臺灣劇團「晃晃跨幅町」對易卜生經典劇作《海妲.蓋柏樂》的詮釋,從劇本歷史、聲響與舞臺設計,到演員的主體創作方法,探討此版本如何讓經典劇作在當代劇場語境下煥發新生,滿足現代觀眾的觀看慾望。
Thumbnail
本文深入解析臺灣劇團「晃晃跨幅町」對易卜生經典劇作《海妲.蓋柏樂》的詮釋,從劇本歷史、聲響與舞臺設計,到演員的主體創作方法,探討此版本如何讓經典劇作在當代劇場語境下煥發新生,滿足現代觀眾的觀看慾望。
Thumbnail
《轉轉生》為奈及利亞編舞家庫德斯.奧尼奎庫與 Q 舞團創作的當代舞蹈作品,融合舞蹈、音樂、時尚和視覺藝術,透過身體、服裝與群舞結構,回應殖民歷史、城市經驗與祖靈記憶的交錯。本文將從服裝設計、身體語彙與「輪迴」的「誕生—死亡—重生」結構出發,分析《轉轉生》如何以當代目光,形塑去殖民視角的奈及利亞歷史。
Thumbnail
《轉轉生》為奈及利亞編舞家庫德斯.奧尼奎庫與 Q 舞團創作的當代舞蹈作品,融合舞蹈、音樂、時尚和視覺藝術,透過身體、服裝與群舞結構,回應殖民歷史、城市經驗與祖靈記憶的交錯。本文將從服裝設計、身體語彙與「輪迴」的「誕生—死亡—重生」結構出發,分析《轉轉生》如何以當代目光,形塑去殖民視角的奈及利亞歷史。
Thumbnail
00631L 冷熱指標程式更新
Thumbnail
00631L 冷熱指標程式更新
Thumbnail
public class MultiplicationTable { public static void main(String[] args) { int size = 9; // 設定九九乘法表的大小 // 雙層迴圈用於生成九九乘法表 f
Thumbnail
public class MultiplicationTable { public static void main(String[] args) { int size = 9; // 設定九九乘法表的大小 // 雙層迴圈用於生成九九乘法表 f
Thumbnail
我今天學到了一個應用程式,只要把自己想打得字打進去打進去,在設定自己喜歡的圖片,他就換幫你轉換成一種密密麻麻很酷的風格。這堂課讓我學到很多東西,也明白現在的科技做的事越來越多了~希望自己以後能更努力的學習
Thumbnail
我今天學到了一個應用程式,只要把自己想打得字打進去打進去,在設定自己喜歡的圖片,他就換幫你轉換成一種密密麻麻很酷的風格。這堂課讓我學到很多東西,也明白現在的科技做的事越來越多了~希望自己以後能更努力的學習
Thumbnail
無論年紀多大多小,只要「願意」付出行動 時間、地點都不是問題 現在都有兒童程式課程 小朋友學的是利用積木組合而成的程式 大朋友就可以直接拿鍵盤來劈哩啪啦開始寫程式碼囉~
Thumbnail
無論年紀多大多小,只要「願意」付出行動 時間、地點都不是問題 現在都有兒童程式課程 小朋友學的是利用積木組合而成的程式 大朋友就可以直接拿鍵盤來劈哩啪啦開始寫程式碼囉~
Thumbnail
為什麼要學習程式呢? 程式是怎麼分類的? 能處理什麼事情?
Thumbnail
為什麼要學習程式呢? 程式是怎麼分類的? 能處理什麼事情?
Thumbnail
白晝的餘燼用酒澆熄 自愛情燃燒後 一壺傾倒的月光    漫過你的唇    輕吻沉醉的靈魂 這是你的城市 不是我的  我的城市在夜裡燃燒 自你走後 漫天紛飛的細雨                                                                  
Thumbnail
白晝的餘燼用酒澆熄 自愛情燃燒後 一壺傾倒的月光    漫過你的唇    輕吻沉醉的靈魂 這是你的城市 不是我的  我的城市在夜裡燃燒 自你走後 漫天紛飛的細雨                                                                  
Thumbnail
原本這次的徵文題目應該是「整座城市都在閱讀─我讀2021台北國際書展」,最後很可惜這個題目也被迫夭折。 不過實體無法做到的,就以數位實現,這本來就是方格子一直在做的事。所以即使書展取消了,閱讀也不曾/不該/不會停止。邀請格友們來分享你最近的購書清單…
Thumbnail
原本這次的徵文題目應該是「整座城市都在閱讀─我讀2021台北國際書展」,最後很可惜這個題目也被迫夭折。 不過實體無法做到的,就以數位實現,這本來就是方格子一直在做的事。所以即使書展取消了,閱讀也不曾/不該/不會停止。邀請格友們來分享你最近的購書清單…
追蹤感興趣的內容從 Google News 追蹤更多 vocus 的最新精選內容追蹤 Google News