濮阳杆衣贸易有限公司

主頁(yè) > 知識(shí)庫(kù) > php實(shí)現(xiàn)構(gòu)建排除當(dāng)前元素的乘積數(shù)組方法

php實(shí)現(xiàn)構(gòu)建排除當(dāng)前元素的乘積數(shù)組方法

熱門(mén)標(biāo)簽:合肥企業(yè)外呼系統(tǒng)線路 企業(yè)400電話辦理多少費(fèi)用 電信外呼系統(tǒng)多少錢(qián)一個(gè)月 代理打電話機(jī)器人 宿州正規(guī)外呼系統(tǒng)軟件 桂陽(yáng)公司如何做地圖標(biāo)注 萍鄉(xiāng)商鋪地圖標(biāo)注 神龍斗士電話機(jī)器人 太原400電話申請(qǐng)流程

構(gòu)建乘積數(shù)組

給定一個(gè)數(shù)組A[0,1,...,n-1],請(qǐng)構(gòu)建一個(gè)數(shù)組B[0,1,...,n-1],其中B中的元素B[i]=A[0]*A[1]*...*A[i-1]*A[i+1]*...*A[n-1]。不能使用除法。

  1. 這題的意思是 B數(shù)組的元素是A數(shù)組中所有元素的乘積,但是要排除掉當(dāng)前元素
  2. A數(shù)組在i元素左右分成兩部分,分別相乘
  3. left數(shù)組是 A[0]...A[n-1], right數(shù)組是A[1]...A[n]
  4. 組合出新的數(shù)組
$A=array(1,2,3,4);

multiply($A);

function multiply($numbers){

    $len=count($numbers);

    $res=array();

    //1. 組合左邊數(shù)組

    $left=array();

    $left[0]=1;

    for($i=1;$i$len;$i++){

        $left[$i]=$left[$i-1]*$numbers[$i-1];

    }  

 

    //2. 組合右邊數(shù)組

    $right=array();

    $right[$len-1]=1;

    for($j=$len-2;$j>=0;$j--){

        $right[$j]=$right[$j+1]*$numbers[$j+1];

    }  

 

    //3. 組合新數(shù)組,整好可以實(shí)現(xiàn)A[0]*A[i-1]*A[i+1]*A[n-1]排除當(dāng)前i元素

    for($i=0;$i$len;$i++){

        $res[$i]=$left[$i]*$right[$i];

    }  

    return $res;

}

您可能感興趣的文章:
  • PHP計(jì)算數(shù)組中值的和與乘積的方法(array_sum與array_product函數(shù))

標(biāo)簽:太原 辛集 廊坊 白銀 鄂州 綏化 衡陽(yáng) 崇左

巨人網(wǎng)絡(luò)通訊聲明:本文標(biāo)題《php實(shí)現(xiàn)構(gòu)建排除當(dāng)前元素的乘積數(shù)組方法》,本文關(guān)鍵詞  php,實(shí)現(xiàn),構(gòu)建,排除,當(dāng)前,;如發(fā)現(xiàn)本文內(nèi)容存在版權(quán)問(wèn)題,煩請(qǐng)?zhí)峁┫嚓P(guān)信息告之我們,我們將及時(shí)溝通與處理。本站內(nèi)容系統(tǒng)采集于網(wǎng)絡(luò),涉及言論、版權(quán)與本站無(wú)關(guān)。
  • 相關(guān)文章
  • 下面列出與本文章《php實(shí)現(xiàn)構(gòu)建排除當(dāng)前元素的乘積數(shù)組方法》相關(guān)的同類信息!
  • 本頁(yè)收集關(guān)于php實(shí)現(xiàn)構(gòu)建排除當(dāng)前元素的乘積數(shù)組方法的相關(guān)信息資訊供網(wǎng)民參考!
  • 推薦文章
    车致| 巴林右旗| 屯留县| 思南县| 寿阳县| 绵阳市| 吴川市| 临清市| 平舆县| 莲花县| 黄浦区| 准格尔旗| 罗江县| 湖南省| 延吉市| 通海县| 安庆市| 仁布县| 鲁甸县| 辛集市| 黄梅县| 陕西省| 和平区| 宝山区| 阿鲁科尔沁旗| 凤冈县| 石泉县| 通海县| 浮梁县| 普格县| 广宁县| 延长县| 文登市| 金山区| 彰化县| 阜康市| 桑植县| 凤阳县| 莱阳市| 泾源县| 荥经县|