亚洲精品久久久中文字幕-亚洲精品久久片久久-亚洲精品久久青草-亚洲精品久久婷婷爱久久婷婷-亚洲精品久久午夜香蕉

您的位置:首頁技術文章
文章詳情頁

php回溯算法計算組合總和的實例代碼

瀏覽:2日期:2022-09-06 16:51:15

給定一個數組 candidates 和一個目標數 target ,找出 candidates 中所有可以使數字和為 target 的組合。

candidates 中的每個數字在每個組合中只能使用一次。

說明

所有數字(包括目標數)都是正整數。 解集不能包含重復的組合。

實例

輸入:

candidates = [10,1,2,7,6,1,5], target = 8,

所求解集為:

[[1, 7],[1, 2, 5],[2, 6],[1, 1, 6]]

解題思路

直接參考回溯算法團滅排列/組合/子集問題。

代碼

class Solution { /** * @param Integer[] $candidates * @param Integer $target * @return Integer[][] */ public $res = []; function combinationSum2($candidates, $target) {sort($candidates); // 排序$this->dfs([], $candidates, $target, 0);return $this->res; } function dfs($array, $candidates, $target, $start) {if ($target < 0) return;if ($target === 0) { $this->res[] = $array; return;}$count = count($candidates);for ($i = $start; $i < $count; $i++) { if ($i !== $start && $candidates[$i] === $candidates[$i - 1]) continue; $array[] = $candidates[$i]; $this->dfs($array, $candidates, $target - $candidates[$i], $i + 1);//數字不能重復使用,需要+1 array_pop($array); }}

實例擴展:

<?php/* * k = 2x + y + 1/2z 取值范圍 * 0 <= x <= 1/2k * 0 <= y <= k * 0 <= z < = 2k * x,y,z最大值 2k */$daMi = 100;$result = array();function isOk($t,$daMi,$result){/*{{{*/ $total = 0; $hash = array(); $hash[1] = 2; $hash[2] = 1; $hash[3] = 0.5; for($i=1;$i<=$t;$i++) { $total += $result[$i] * $hash[$i]; } if( $total <= $daMi) { return true; } return false;}/*}}}*/function backtrack($t,$daMi,$result){/*{{{*/ //遞歸出口 if($t > 3) { //輸出最優解 if($daMi == (2 * $result[1] + $result[2] + 0.5 * $result[3])) { echo '最優解,大米:${daMi},大牛:$result[1],中牛: $result[2],小牛:$result[3]n'; } return; } for($i = 0;$i <= 2 * $daMi;$i++) { $result[$t] = $i; //剪枝 if(isOk($t,$daMi,$result)) { backtrack($t+1,$daMi,$result); } $result[$t] = 0; }}/*}}}*/backtrack(1,$daMi,$result);?>

到此這篇關于php回溯算法計算組合總和的實例代碼的文章就介紹到這了,更多相關php回溯算法計算組合總和的方法內容請搜索好吧啦網以前的文章或繼續瀏覽下面的相關文章希望大家以后多多支持好吧啦網!

標簽: PHP
相關文章:
主站蜘蛛池模板: 免费久草视频 | 黄色毛片电影 | 亚洲操片| 黄p片| 日韩国产精品欧美一区二区 | japanesexvideos护士 | 日本高清一级做a爱过程免费视频 | 五月婷婷六月丁香 | 国产换爱交换乱理伦片 | 国产乱理 | yy一级毛片免费视频 | 午夜香蕉网 | 日韩在线一区二区三区免费视频 | 国产aⅴ一区二区三区 | 婷婷丁香综合网 | 国产精品亚洲四区在线观看 | 九色国产在视频线精品视频 | 中国帅小伙肌肉gaysextube | 国产在线高清不卡免费播放 | 成人国产在线24小时播放视频 | 黄色视屏免费看 | 成人午夜在线观看国产 | 极品白嫩无套视频在线播放张悠雨 | 在线观看中文字幕第一页 | 日韩久久一区二区三区 | 国产丝袜视频在线 | 久久久精品一区二区三区 | 亚洲欧洲精品在线 | 国内精品福利在线视频 | 亚洲一区2区三区4区5区 | 国产精品日本一区二区在线播放 | 最近免费中文字幕大全免费版视频 | 一级片在线视频 | 欧美一级片黄色片 | 成人三级黄色片 | 久久精品爱国产免费久久 | 久久久精品午夜免费不卡 | 六月久久| 国产精品美女免费视频大全 | 国产高清在线精品一区 | 国产在线高清理伦片a |