給定一個(gè)二維數(shù)組,數(shù)組每行從左到右都是遞增的;沒列也是遞增的。 請(qǐng)完成一個(gè)函數(shù),輸入如上二維數(shù)組和一個(gè)整數(shù),函數(shù)功能為判斷該整數(shù)是都存在于數(shù)組中。 時(shí)間復(fù)雜度盡可能低。(請(qǐng)說明時(shí)間復(fù)雜度)

給定一個(gè)二維數(shù)組,數(shù)組每行從左到右都是遞增的;沒列也是遞增的。
請(qǐng)完成一個(gè)函數(shù),輸入如上二維數(shù)組和一個(gè)整數(shù),函數(shù)功能為判斷該整數(shù)是都存在于數(shù)組中。
時(shí)間復(fù)雜度盡可能低。(請(qǐng)說明時(shí)間復(fù)雜度)

代碼


$arr = array(
    [1,2,8,9],
    [2,4,9,12],
    [4,7,10,13],
    [6,8,11,15]
);
$findParam = 7;
var_dump( find($arr, $findParam) );

/**
 * 順序查找——時(shí)間復(fù)雜度O(n2)
 */
function find($arr, $findParam) {
    //將數(shù)據(jù)放在坐標(biāo)右上角array[0][col]
    $row = 0; //行
    $col = count($arr[0]) - 1;//列
        while ($row <= count($arr) - 1 && $col >= 0) {
            if ($findParam > $arr[$row][$col])
            $row++;//遇到大的下移
            else if ($findParam < $arr[$row][$col])
            $col--;//遇到小的左移
            else
                return true;
        }
        return false;
}



最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請(qǐng)結(jié)合常識(shí)與多方信息審慎甄別。
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡(jiǎn)書系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

  • 該文章為轉(zhuǎn)載文章,作者簡(jiǎn)介:汪劍,現(xiàn)在在出門問問負(fù)責(zé)推薦與個(gè)性化。曾在微軟雅虎工作,從事過搜索和推薦相關(guān)工作。 T...
    名字真的不重要閱讀 5,549評(píng)論 0 3
  • 基礎(chǔ)篇NumPy的主要對(duì)象是同種元素的多維數(shù)組。這是一個(gè)所有的元素都是一種類型、通過一個(gè)正整數(shù)元組索引的元素表格(...
    oyan99閱讀 5,288評(píng)論 0 18
  • 美的人千篇一律,有趣的靈魂萬(wàn)里挑一
    書南Q閱讀 183評(píng)論 0 2
  • 第一篇~不知道寫點(diǎn)什么呢,大概這就是所謂的萬(wàn)事開頭難嗎?是有人推薦才下筆的,她說,沒事寫點(diǎn)東西吧,像以前一樣...
    北海道的小番茄閱讀 238評(píng)論 4 0
  • 越努力走近,越發(fā)現(xiàn)距離遠(yuǎn)。 沒有對(duì)比就沒有傷害,恰如“我付出了上萬(wàn)塊,連一百塊都不給我”。 長(zhǎng)久的現(xiàn)象推斷本質(zhì),“...
    瞻彼洛矣閱讀 425評(píng)論 0 0

友情鏈接更多精彩內(nèi)容