- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
面试题汇总——编程基础
写一个排序算法,可以是冒泡排序或者是快速排序,假设待排序对象是一个维数组。(提示:不能使用系统已有函数,另外请仔细回忆以前学习过的基础知识)
实现一个字符串截取的函数,类似于substr,必须能够截取中文这种多字节编码。假设每个中文也是一个字符,普通的数字、符号、字母也是一个字符。(提示:GB编码的中文字符高位范围是 0x81-0xFE )
写一个遍历指定目录下所有子目录和子文件的函数(提示:可以使用递归的方法)
4、写出匹配邮箱地址和URL的两个正则表达式。类似下面的:
邮箱地址:user_name.first@
URL地址:/user_profile.php?uid=100
(提示:使用标准的正则表达式,就是PHP中preg_* 类的正则处理函数能够解析的正则)
请描述出七层网络模型的名称,由下到上(可以使用中文描述)
6、说说下面这些这些协议的全称和中文解释(提示:都是工作在应用层)SMTP、POP3、HTTP、FTP、DNS
7、关于树的数据结构.
8、把一篇英文文档中所有单词的首字母转为大写,文档存在doc.txt中。可以在多种编程语言中选择(C\C++,JAVA,PHP...)写出你的思路,尽量优化你的程序。
9、使用PHP描述顺序查找和二分查找(也叫做折半查找)算法,顺序查找必须考虑效率,对象可以是一个有序数组//二分查找(数组里查找某个元素)
bin_sch($array, $low, $high, $k)
{
if ($low = $high)
{
$mid = intval(($low+$high)/2);
if ($array[$mid] == $k)
{
return $mid;
}
elseif ($k $array[$mid])
{
return bin_sch($array, $low, $mid-1, $k);
}
else
{
return bin_sch($array, $mid+1, $high, $k);
}
}
return -1;
}
//顺序查找(数组里查找某个元素)
seq_sch($array, $n, $k)
{
$array[$n] = $k;
for($i=0; $i$n; $i++)
{
if($array[$i]==$k)
{
break;
}
}
if ($i$n)
{
return $i;
}
else
{
return -1;
}
}
10、使用PHP描述冒泡排序和快速排序算法,对象可以是一个数组
//冒泡排序(数组排序)
bubble_sort($array)
{
$count = count($array);
if ($count = 0)
return false;
for($i=0; $i$count; $i++)
{
for($j=$count-1; $j$i; $j--)
{
if ($array[$j] $array[$j-1])
{
$tmp = $array[$j];
$array[$j] = $array[$j-1];
$array[$j-1] = $tmp;
}
}
}
return $array;
}
//快速排序(数组排序)
quick_sort($array)
{
if (count($array) = 1)
return $array;
$key = $array[0];
$left_arr = array();
$right_arr = array();
for ($i=1; $icount($array); $i++)
{
if ($array[$i] = $key)
$left_arr[] = $array[$i];
else
$right_arr[] = $array[$i];
}
$left_arr = quick_sort($left_arr);
$right_arr = quick_sort($right_arr);
return array_merge($left_arr, array($key), $right_arr);
}
11、 写一个二维数组排序算法函数,能够具有通用性,可以调用php内置函数
//二维数组排序, $arr是数据,$keys是排序的健值,$order是排序规则,1是升序,0是降序
array_sort($arr, $keys, $order=0)
{
if (!is_array($arr))
{
return false;
}
$keys = array();
foreach($arr as $key = $val)
{
$keys[$key] = $val[$keys];
}
if($order == 0
文档评论(0)