//在arr中區(qū)間[lef,rig)尋找第一個>=val的元素的位置
//若沒有元素>=val,則返回rig
int lowerBound(int *arr,int lef,int rig,int val)
{
int mid;
while(lef<rig)
{
mid=lef+((rig-lef)>>1);
if(arr[mid]>=val)
{
rig=mid;
}
else lef=mid+1;
}
return lef;
}
//在arr中區(qū)間[lef,rig)尋找第一個>val的元素的位置
//若沒有元素>val喊崖,則返回rig
int upperBound(int *arr,int lef,int rig,int val)
{
int mid;
while(lef<rig)
{
mid=lef+((rig-lef)>>1);
if(arr[mid]<=val)
{
lef=mid+1;
}
else rig=mid;
}
return lef;
}
//在arr中區(qū)間[ lef,rig ]尋找等于key的元素
//不存在,則返回-1
int binarySearch(int *arr,int lef,int rig,int key)
{
int mid;
while(lef<=rig)
{
mid=lef+(rig-lef)/2;
if(arr[mid]==key) return mid;
if(arr[mid]>key) rig=mid-1;
else lef=mid+1;
}
return -1;
}
上界&下界&精確查找
最后編輯于 :
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
- 文/潘曉璐 我一進店門榨惠,熙熙樓的掌柜王于貴愁眉苦臉地迎上來奋早,“玉大人,你說我怎么就攤上這事冒冬∩祢牵” “怎么了?”我有些...
- 文/不壞的土叔 我叫張陵简烤,是天一觀的道長剂邮。 經(jīng)常有香客問我,道長横侦,這世上最難降的妖魔是什么挥萌? 我笑而不...
- 正文 為了忘掉前任,我火速辦了婚禮枉侧,結(jié)果婚禮上引瀑,老公的妹妹穿的比我還像新娘。我一直安慰自己榨馁,他們只是感情好憨栽,可當(dāng)我...
- 文/花漫 我一把揭開白布。 她就那樣靜靜地躺著翼虫,像睡著了一般屑柔。 火紅的嫁衣襯著肌膚如雪。 梳的紋絲不亂的頭發(fā)上珍剑,一...
- 文/蒼蘭香墨 我猛地睜開眼领虹,長吁一口氣:“原來是場噩夢啊……” “哼!你這毒婦竟也來了菌羽?” 一聲冷哼從身側(cè)響起掠械,我...
- 正文 年R本政府宣布檬寂,位于F島的核電站终抽,受9級特大地震影響,放射性物質(zhì)發(fā)生泄漏桶至。R本人自食惡果不足惜昼伴,卻給世界環(huán)境...
- 文/蒙蒙 一、第九天 我趴在偏房一處隱蔽的房頂上張望镣屹。 院中可真熱鬧圃郊,春花似錦、人聲如沸女蜈。這莊子的主人今日做“春日...
- 文/蒼蘭香墨 我抬頭看了看天上的太陽伪窖。三九已至吏廉,卻和暖如春,著一層夾襖步出監(jiān)牢的瞬間惰许,已是汗流浹背。 一陣腳步聲響...
推薦閱讀更多精彩內(nèi)容
- 小學(xué)語文修改病句的方法 修改病句是小學(xué)語文考試中常見的題型,在修改病句之前冷尉,我們應(yīng)該清晰的了解有哪些病句現(xiàn)象漱挎,下面...
- 嗯尸饺。新書到手=场(這是我學(xué)《百合心》作者庹政先生平常說話的語調(diào)助币,似乎每次開口前,需要清清嗓子螟碎。也難怪眉菱,四川霧霾大嘛。...