我有'解决方案',如“4 2 10 5 0 3”,“0 10 2 5 4 3”。 (只是一个例子)
如何获得按字典顺序排列的最小解决方案?这是什么意思?该程序是PHP。我尝试用“”对它们进行爆炸,并在生成的数组上使用min()
函数但是没有给出正确的解决方案。
答案 0 :(得分:3)
尝试自然排序顺序
$strVal1 = "4 2 10 5 0 3";
$arrVal1 = explode(" ", $strVal1);
natsort($arrVal1); //will sort array as 0,2,3,4,5,10
$minVal = $arrVal1[0];
echo $minVal; //should return 0
编辑:根据您的评论
//let's suppose you have an array of string values as in your example
//and $strVal1 = ""4 2 10 5 0 3", $strVal2 = "0 10 2 5 4 3" and so on
$strVals = array($strVal1, $strVal2 , $strVal3 , ... ,$strValN)
//just sort it naturally and there you have it :)
natsort($strVals);
//the smallest element is first
echo $strVals[0];
PHP natsort()函数引用 - check here