編程中的左閉右開思想


簡述

  相信很多人在敲代碼的時候,都會發現在編程中的區間幾乎都是左閉右開的,這種左閉右開的區間表示方式讓我們冥冥中覺得很方便,還有就是索引的下標從0開始。左閉右開和從零開始讓我們對於像二分或者遍歷的寫法有一些混亂,但熟悉了它們的本質之后寫起代碼來就得心應手了。

什么是左閉右開

  左閉右開是一種區間表示方式,例如在整數上[3,6)表示3,4,5三個數,閉代表取值取到那個數,開代表取值取不到那個數。

左閉右開的好處

  對於一個左閉右開區間[l,r)來說

能表示單獨一個數

  若區間內只有一個數我們可以用像[1,2)表示1,注意[x,x]不符合數學上區間的定義(左區間比右區間大)

便於統計區間內個數

  r減l正好是區間內元素的個數,對於左閉右閉區間來說r-l+1才是區間內元素  

便於表示空集

  空集可以用[x,x)表示

便於切割區間

  例如我們要在區間內找到一個切割點x,並把x左邊歸為一個區間,x和x右邊歸為一個區間則切割后的區間就可以用[l,x)和[x,r)表示

和數組下標相匹配

  對於一個從0開始的長度為n的數組來說,[0,n)正好表示這個數組的所有下標,如果用閉區間則要用[0,n-1]來表示

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM