<input id="dlorj"></input>
      <acronym id="dlorj"><form id="dlorj"></form></acronym>

      扣丁學堂PHP培訓簡述PHP實現構建排除當前元素的乘積數組方法

      2019-07-30 16:21:32 4269瀏覽

      本篇文章扣丁學堂PHP培訓小編給小伙伴們整理了PHP實現構建排除當前元素的乘積數組方法及相關實例代碼,對PHP開發技術感興趣的小伙伴就隨小編一起來看一下吧。


      扣丁學堂PHP培訓簡述PHP實現構建排除當前元素的乘積數組方法


      構建乘積數組


      給定一個數組A[0,1,...,n-1],請構建一個數組B[0,1,...,n-1],其中B中的元素B[i]=A[0]*A[1]*...*A[i-1]*A[i+1]*...*A[n-1]。不能使用除法。


      這題的意思是 B數組的元素是A數組中所有元素的乘積,但是要排除掉當前元素


      A數組在i元素左右分成兩部分,分別相乘


      left數組是 A[0]...A[n-1], right數組是A[1]...A[n]


      組合出新的數組


      $A=array(1,2,3,4);
      
      multiply($A);
      
      function multiply($numbers){
      
          $len=count($numbers);
      
          $res=array();
      
          //1. 組合左邊數組
      
          $left=array();
      
          $left[0]=1;
      
          for($i=1;$i<$len;$i++){
      
              $left[$i]=$left[$i-1]*$numbers[$i-1];
      
          }  
      
       
      
          //2. 組合右邊數組
      
          $right=array();
      
          $right[$len-1]=1;
      
          for($j=$len-2;$j>=0;$j--){
      
              $right[$j]=$right[$j+1]*$numbers[$j+1];
      
          }  
      
       
      
          //3. 組合新數組,整好可以實現A[0]*A[i-1]*A[i+1]*A[n-1]排除當前i元素
      
          for($i=0;$i<$len;$i++){
      
              $res[$i]=$left[$i]*$right[$i];
      
          }  
      
          return $res;
      
      }


      想要了解更多關于PHP開發方面內容的小伙伴,請關注扣丁學堂PHP培訓官網、微信等平臺,扣丁學堂IT職業在線學習教育有專業的PHP講師為您指導,此外扣丁學堂老師精心推出的PHP視頻教程定能讓你快速掌握PHP從入門到精通開發實戰技能。扣丁學堂PHP技術交流群:374332265。


                              JavaEE/微服務/源碼解析/分布式/企業級架構【VIP體驗課】


           【關注微信公眾號獲取更多學習資料】       【掃碼進入JavaEE/微服務VIP免費公開課】


        


      查看更多關于“php培訓資訊”的相關文章>>


      標簽: PHP培訓 PHP視頻教程 PHP在線視頻 PHP學習視頻 Laravel框架
      微信
      微博
      15311698296

      全國免費咨詢熱線

      郵箱:codingke@1000phone.com

      官方群:148715490

      北京千鋒互聯科技有限公司版權所有   北京市海淀區寶盛北里西區28號天豐利商場4層
      京ICP備12003911號-6   Copyright ? 2013 - 2019
      返回頂部 返回頂部
      500福利导航第一福利导