當前位置:首頁 » 編程語言 » php演算法題

php演算法題

發布時間: 2022-07-10 14:45:57

php求最大連續出現次數的演算法,見問題詳細

<?php
//Code by jhk
function get_array_repeats(array $array,$string) {
/*
函數說明:計算$string在$array(需為數組)中重復出現的次數.
*/
$count = array_count_values($array);
foreach ($count as $key => $value) {
if ($key = $string) {
return $value;
}
}
}
?>

㈡ PHP演算法:知道具體年月日求本周從幾號到幾號

function
weekStartEnd($y,
$m,
$d)
{
$d
=
date("$y-$m-$d
00:00:00");
$s
=
strtotime
($d);
$w
=
date('w',
strtotime($d));
//
得到指定日期是星期幾
$add1
=
0
-
$w;
//
周日,和指定日期相差的天數
$add2
=
6
-
$w;
//
周六,和指定日期相差的天數
$s1
=
strtotime("$add1
days",
$s);
$s2
=
strtotime("$add2
days",
$s);
return
array(
'start'
=>
date("Y年m月
d日
",
$s1),
'end'
=>
date("Y年m月d日",
$s2)
);
}
$test
=
weekStartEnd(2010,
1,
14);
echo
"周開始日:
".$test['start']."\n";
echo
"周結束日:
".$test['end']."\n";
結果
周開始日:
2010年01月10日
周結束日:
2010年01月16日

㈢ php幾種排序演算法實例詳解

下面給你介紹四種排序方法:

1) 插入排序(Insertion Sort)的基本思想是:
每次將一個待排序的記錄,按其關鍵字大小插入到前面已經排好序的子文件中的適當位置,直到全部記錄插入完成為止。實現代碼如下:

㈣ php的這個演算法答案是什麼 6%345:32a=

6%3?45:32a?=
這是完整的表達式么?應該不對吧?
6%3結果為0, 0為假,取 : 後面的值

㈤ php演算法編程 計算天數

<?php
$start='2017-2-5';
$end='2018-3-6';
functioncalDate($start,$end){
$start_time=strtotime($start); //獲得$start的秒時間戳
$end_time=strtotime($end); //獲得$end的秒時間戳
return($end_time-$start_time)/60/60/24; //秒時間戳相減得到兩個日期相差的秒數,通過秒數計算天數
}
echocalDate($start,$end);
?>

㈥ PHP數組算術題,誰做得多就給誰

//第一題:

//**************************************************************

$str='1,2,3,4,5,6'; //你給定的字元串
function my($str){
$item_arr=explode(',',$str);
shuffle($item_arr);
if($item_arr[3]==5){
return my($str);
}else{
for($i=0;$i<sizeof($item_arr);$i++){
if($item_arr[$i]==5 && next($item_arr)==6){
return my($str);
exit();
}
}
return $item_arr;
}
}
print_r(my($str));

//*********************************************第二題

$str="aaaabsfdsfavdchjs"; //你給出的字元串
$item=str_split($str);
$a=array_count_values($item);
foreach($a as $k=>$v){
if($v==1){
echo $k;
exit();
}
}

//*****************************************第三題

$str='12,65,110,2,3,55,79,10,45'; //這是你給定的數字字元串
$item_arr=explode(',',$str);
while(sizeof($item_arr)>0){
$max=max($item_arr);
$min=min($item_arr);
echo $max."<br/>";
echo $min."<br/>";
$max_pos=array_keys($item_arr,$max);
$min_pos=array_keys($item_arr,$min);
unset($item_arr[$max_pos[0]]);
unset($item_arr[$min_pos[0]]);
}

//****************************************第四題

$num=1234567890; //你給定的數字
echo number_format($num);

/******************************************第五題

$filename='abc.exe.jpg';
$item=pathinfo($filename);
echo $item['extension'];

/*******************************************第六題


/*****************************************第七,八題
第七第八題重復.

可以使用array_multisort()函數對二維數組進行排序

/*****************************************第9題

$str_low='abcdefghijklmnopqrstuvwxyz';
$str_upp='ABCDEFGHIJKLMNOPQRSTUVWXYZ';
$arr_low=str_split($str_low);
$arr_upp=str_split($str_upp);
$str= 'A journey of a thousand miles must begin with a single step.'; //你給出的字元串
$a=str_word_count($str,1);
foreach($a as $k=>$v){
$item=substr($v,-1,1);
if(in_array($item,$arr_low)){ //小寫的情況
if(strlen($v)==1){
$item=strtoupper($v);
echo $item." ";
}else{
$item=strtoupper($item);
$item_str=substr($v,0,strlen($v)-1);
$item_str=$item_str.$item;
echo $item_str." ";
}
}elseif(in_array($item,$arr_upp)){ //大寫的情況
if(strlen($v)==1){
$item=strtolower($v);
echo $item." ";
}else{
$item=strtoupper($item);
$item_str=substr($v,0,strlen($v)-1);
$item_str=$item_str.$item;
echo $item_str." ";
}
}

}

/********************************************第十題
已經看了N遍,仍然無法理解題目意思

/********************************************第十一題

$data=array(23,22,45,28);
$a=implode('',$data);
$b=str_split($a);
print_r($b);

/********************************************第十二題

體力不支,讓大家打吧.

㈦ php演算法題

$m = 100;
$n = 11;
echo getKing($m,$n);
function getKing($n, $m)
{
//強制轉換為數值型
$n = intval($n);
$m = intval($m); //讓猴子排好隊
for($i=0; $i < $n; $i++)
{
$monkeys[$i] = $i+1;
}
$start = 0;//初始化開始位置
$step = $m - 1;
for($i=0; $i < $n; $i++)
{
//判斷猴子的個數,如果只剩一個就直接返回這只猴子
$num_monkey = count($monkeys);
if($num_monkey === 1) return $monkeys[0]; //如果這一圈找不到要踢的猴子,就在下一圈找到要踢的猴子
if($start + $step >= $num_monkey)
{
$start = ($step+$start)%$num_monkey;
} else
{
//這一圈找到就直接踢它
$start = $start + $step;
}
unset($monkeys[$start]); //踢猴子
sort($monkeys); //讓猴子重新站好
}
}

㈧ php演算法題 有 4 個項⽬組

$team=array('a'=>10,'b'=>7,'c'=>5,'d'=>4);
for($i=1;$i<121;$i++){
$max=max($team);
foreach($team as &$v){
if($max==$v){
$v-=3;
}else{
$v++;
}
}}

㈨ php若干數組組合演算法

$a=array ( '黑色','白色' );
$b=array ( '36碼' ,'37碼' );
$c=array ( '男款' ,'女款' );

$d = array();
foreach ($a as $i => $_a ){
foreach ($b as $ii => $_b ){
foreach ($c as $iii => $_c ){
$d[] = $_a.$_b.$_c;
}
}
}
print_r($d);

Array
(
[0] => 黑色36碼男款
[1] => 黑色36碼女款
[2] => 黑色37碼男款
[3] => 黑色37碼女款
[4] => 白色36碼男款
[5] => 白色36碼女款
[6] => 白色37碼男款
[7] => 白色37碼女款
)

熱點內容
新預演算法缺陷 發布:2025-03-11 07:09:00 瀏覽:628
罩杯演算法英碼 發布:2025-03-11 07:08:25 瀏覽:916
為什麼迅雷下載高速伺服器很忙 發布:2025-03-11 07:08:25 瀏覽:496
framebufferlinux 發布:2025-03-11 07:07:41 瀏覽:439
python降版本 發布:2025-03-11 07:03:24 瀏覽:987
存儲延遲警告 發布:2025-03-11 07:02:51 瀏覽:252
登錄密碼什麼意思啊 發布:2025-03-11 06:52:24 瀏覽:690
q2l哪個配置最值 發布:2025-03-11 06:50:19 瀏覽:918
嗨皮咳嗽國際服伺服器地址 發布:2025-03-11 06:37:12 瀏覽:699
網易我的世界如何登陸伺服器 發布:2025-03-11 06:23:22 瀏覽:715