当前位置: 首页 > news >正文

廊坊永清网站建设百度搜索风云榜电脑版

廊坊永清网站建设,百度搜索风云榜电脑版,无锡阿凡达建设,网站空间免费1、给你四个坐标点#xff0c;判断它们能不能组成一个矩形#xff0c;如判断 ([0,0],[0,1],[1,1],[1,0]) 能组成一个矩形。 我们分析这道题#xff0c; 给4个标点#xff0c;判断是否矩形 高中知识#xff0c;矩形有4条边#xff0c;两两相等#xff0c; 矩形两条对角线… 1、给你四个坐标点判断它们能不能组成一个矩形如判断 ([0,0],[0,1],[1,1],[1,0]) 能组成一个矩形。 我们分析这道题 给4个标点判断是否矩形 高中知识矩形有4条边两两相等 矩形两条对角线相等 矩形的长短边与对角线满足勾股定理。 故解题思路为根据坐标点   列出所有的两点组合边长的数组去重看是不是只剩 3个长度注意正方形2个长度   判断是否满足勾股定理   调优一下先判断有没有重复的点有的话肯定不是矩形 代码如下 ?phpfunction isRectangle($point1, $point2, $point3, $point4){if ($point1 $point2 || $point1 $point3 || $point1 $point4 || $point2 $point3 || $point2 $point4 || $point3 $point4) {return false;}$lengthArr [];$lengthArr[] getLengthSquare($point1, $point2);$lengthArr[] getLengthSquare($point1, $point3);$lengthArr[] getLengthSquare($point1, $point4);$lengthArr[] getLengthSquare($point2, $point3);$lengthArr[] getLengthSquare($point2, $point4);$lengthArr[] getLengthSquare($point3, $point4);$lengthArr array_unique($lengthArr);$lengthCount count($lengthArr);if ($lengthCount 3 || $lengthCount 2 ) {if ($lengthCount 2) {return(max($lengthArr) 2*min($lengthArr));} else {$maxLength max($lengthArr);$minLength min($lengthArr);$otherLength array_diff($lengthArr, [$maxLength, $minLength]);return($minLength $otherLength $maxLength);}} else {return false;} }function getLengthSquare($point1, $point2){$res pow($point1[0]-$point2[0], 2)pow($point1[1]-$point2[1], 2);return $res; }var_dump(isRectangle([0,0],[0,2],[2,2],[2,0])); 2、写一段代码判断单向链表中有没有形成环如果形成环请找出环的入口处即 P 点 /**单链表的结点类*/ class LNode{//为了简化访问单链表,结点中的数据项的访问权限都设为publicpublic int data;public LNode next; }class LinkListUtli {//当单链表中没有环时返回null有环时返回环的入口结点public static LNode searchEntranceNode(LNode L){LNode slowL;//p表示从头结点开始每次往后走一步的指针LNode fastL;//q表示从头结点开始每次往后走两步的指针while(fast !null fast.next !null) {if(slowfast) break;//p与q相等单链表有环slowslow.next;fastfast.next.next;}if(fastnull || fast.nextnull) return null;// 重新遍历寻找环的入口点slowL;while(slow!fast){slowslow.next;fastfast.next;}return slow;} } 3、写一个函数获取一篇文章内容中的全部图片并下载 function download_images($article_url , $image_path tmp){// 获取文章类容$content file_get_contents($article_url);// 利用正则表达式得到图片链接$reg_tag /img.*?([^]*(jpg|bmp|jpeg|gif|png)).*?/;$ret preg_match_all($reg_tag, $content, $match_result); $pic_url_array array_unique($match_result1[1]);// 创建路径$dir getcwd() . DIRECTORY_SEPARATOR .$image_path;mkdir(iconv(UTF-8, GBK, $dir), 0777, true);foreach($pic_url_array as $pic_url){// 获取文件信息$ch curl_init($pic_url);curl_setopt($ch, CURLOPT_HEADER, 0);curl_setopt($ch, CURLOPT_NOBODY, 0);curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, FALSE );curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, FALSE );curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);$fileInfo curl_exec($ch);$httpinfo curl_getinfo($ch);curl_close($ch);// 获取图片文件后缀$ext strrchr($pic_url, .);$filename $dir . / . uniqid() . $ext; // 保存图片信息到文件$local_file fopen($filename, w);if(false ! $local_file){if( false ! fwrite($local_file, $filecontent) ){fclose($local_file);}}}} 4、获取当前客户端的 IP 地址并判断是否在111.111.111.111,222.222.222.222) 如果没有使用代理服务器 $ip $_SERVER[REMOTE_ADDR]; 使用透明代理 $ip $_SERVER[HTTP_X_FORWARDED_FOR]; 5、nginx 的 log_format 配置如下 log_format main ‘remoteaddr−remote_user [timelocal]request”’ ‘statusbody_bytes_sent “httpreferer″http_user_agent” “upstreamresponsetimerequest_time” “http_x_forwarded_for; 从今天的 nginx log 文件 access.log 中 a、列出 “request_time” 最大的 20 行b、列出早上 10 点访问量做多的 20 个 url 地址 6、什么是 CSRF 攻击XSS 攻击如何防范 CSRF跨站请求伪造可以通过通过判断来源和加 Token 的方式来防范。 XSS跨站脚本攻击可以通过对内容转义和过滤来防范还有 CSP 7、应用中我们经常会遇到在 user 表随机调取 10 条数据来展示的情况简述你如何实现该功能。 SELECT * FROM table WHERE id (SELECT FLOOR( MAX(id) * RAND()) FROM table ) ORDER BY id LIMIT 1; 8、从扑克牌中随机抽 5 张牌判断是不是一个顺子即这 5 张牌是连续的 这个问题有个关键点扑克牌1-13 不能再多了。这就很简单了。用 PHP 来做定义一个数组分别存着 1 到 13, 拿出一个置空一个最后看下 这五个置空的 是不是连续的。这种情况不考虑抽出的顺序。 9、两条相交的单向链表如何求它们的第一个公共节点 思想 如果两个链表相交则从相交点开始后面的节点都相同即最后一个节点肯定相同从头到尾遍历两个链表并记录链表长度当二者的尾节点不同则二者肯定不相交尾节点相同如果 A 长为 LAB 为 LB如果 LALB, 则 A 前 LA-LB 个先跳过 如果两个单向链表有公共的结点也就是说两个链表从某一结点开始它们的 m_pNext 都指向同一个结点。但由于是单向链表的结点每个结点只有一个 m_pNext因此从第一个公共结点开始之后它们所有结点都是重合的不可能再出现分叉。所以两个有公共结点而部分重合的链表拓扑形状看起来像一个 Y而不可能像 X。 10、最长公共子序列问题 LCS如有 [1,2,5,11,32,15,77] 和 [99,32,15,5,1,77] 两个数组找到它们共同都拥有的数写出时间复杂度最优的代码不能用 array_intersect这里有坑需要去研究一下动态规划。 11、linux 的内存分配和多线程原理 12、MYSQL 中主键与唯一索引的区别 主键绝对不能有空值。唯一索引可以有空值 13、http 与 https 的主要区别 关键是 S 上。简而言之https 建立连接后要先把 SSL 的证书发下去有了公钥和私钥就可以解密了。 14、http 状态码及其含意 200 请求已成功请求所希望的响应头或数据体将随此响应返回。301 被请求的资源已永久移动到新位置。302 请求的资源现在临时从不同的 URI 响应请求。400 1、语义有误当前请求无法被服务器理解。2、请求参数有误。401 当前请求需要用户验证。403 服务器已经理解请求但是拒绝执行它。404 请求失败请求所希望得到的资源未被在服务器上发现。500 服务器遇到了一个未曾预料的状况无法完成对请求的处理会在程序码出错时出现。501 服务器不支持当前请求所需要的某个功能。无法识别请求的方法。502 作为网关或者代理工作的服务器尝试执行请求时从上游服务器接收到无效的响应。503 由于临时的服务器维护或者过载服务器当前无法处理请求。 15、linux 中怎么查看系统资源占用情况 top、htop、free、uptime 16、SQL 注入的原理是什么如何防止 SQL 注入 原理第一 SQL 本身有问题这个不是主要问题。第二你写的 SQL 很有问题这是最主要的 防范第一绝对不要相信用户输入的任何东西。第二预编译。现在的框架一般都会有 SQL 过滤的。 17、isset (null) isset (false) empty (null) empty (false) 输出 PHP 入门问题isset 和 empty 的区别 分别是 false, true, true, true 18、优化 MYSQL 的方法 第一数据超过一定数量或者体积请拆分表垂直或者水平分最有效果的优化 第二务必有自增主键。通过自增主键来查数据是最快的。 第三常用的查询字段建立联合索引写 SQL 一定要尊从最左原则用到这个索引。 第四不要把逻辑运算放到 sql 里。言外之意是不要写太复杂的 SQL你能写复杂的 SQL 你肯定也能通过 PHP 实现。 19、数据库中的事务是什么 事务transaction是作为一个单元的一组有序的数据库操作。如果组中的所有操作都成功则认为事务成功即使只有一个操作失败事务也不成功。如果所有操作完成 事务则提交其修改将作用于所有其他数据库进程。如果一个操作失败则事务将回滚该事务所有操作的影响都将取消。 20、写一个函数尽可能高效的从一个标准 URL 中取出文件的扩展名 会 写正则最好。 21、参数为多个日期时间的数组返回离当前时间最近的那个时间 遍历数组求当前时间差和第一个进行对比小于第一个交换位置。最后取第一个即可。 22、echo、print、print_r 的区别 这三个放在一起回答的点在于print_r 是函数echo、print 是结构语言。 至于他们具体的区别参考https://www.cnblogs.com/xiaotaoing/p/66873... 23、http 协议的 header 中有哪些 key 及含义 这个问题很难。一会半会说不清楚。如果做过 PHP restful 接口开发也踩过这里面的坑那应该是可以答出来常用的几个 KEY 的。 24、二叉树前中后遍历代码 层序遍历先序遍历中序遍历后序遍历 25、PHP 的数组和 C 语言的数组结构上有何区别 但从 PHP 来讲考的是 PHP 数组的实现。可以简单的认为PHP 的数组是 hash 桶 十字链表实际上是数列 Array列表 List散列表 / 关联数组 / 字典 Hashtable 的聚合体。优点是查询效率很高遍历很方便缺点是占内存较多。还是空间换时间的思路毕竟现在内存又不值钱 C 语言的数组就是定长定类型的数列。 26、Redis 的跳跃表怎么实现的 跳跃表 (skiplist) 是一种有序数据结构它通过在每个节点中维持多个指向其他节点的指针从而达到快速访问节点的目的。 27、哈希是什么hash 冲突后数据怎么存 28、聚簇索引聚集索引的区别 29、BTree 是怎么进行搜索的 30、数组和 hash 的区别是什么 31、写个函数判断下面扩号是否闭合左右对称即为闭合 ((())))(())(())))(((((())(()())()() 32、 找出数组中不重复的值 [1,2,3,3,2,1,5] 用普通方法肯定很容易的。 33、32 题你的时间复杂度是多少有的情况下你写了个算法然后面试官会让你把你的算法的时间复杂度表达式写出来 34、PHP 的的这种弱类型变量是怎么实现的 考 zval 的PHP 的八种类型本质只有一个结构。 35、在 HTTP 通讯过程中是客户端还是服务端主动断开连接 三次握手和四次挥手以及他们每步的状态。 这个问题最好能一步到位回答的全面的。一般都是有客户端告诉服务端我这边东西发完了可以断连接了么。但是如果客户端发完 FIN 服务端没有回复就会重试直到超过超时时间就断了。服务端也一样超过时间服务端就断了。 36、PHP 中发起 http 请求有哪几种方式它们有何区别 GETPOSTHEADPUTDELETEOPTIONSTRACECONNECT 37、有一颗二叉树写代码找出来从根节点到 flag 节点的最短路径并打印出来flag 节点有多个。比如下图这个树中的 6 和 14 是 flag 节点请写代码打印 8、3、6 和 8、10、14 两个路径 典型的二叉搜索树。大学数据结构的基础题。 38、有两个文件文件大小都超过了 1G一行一条数据每行数据不超过 500 字节两文件中有一部分内容是完全相同的请写代码找到相同的行并写到新文件中。PHP 最大允许内内为 255M。 将文件拆分成若干个小文件根据内容计算 hash 值分散到不同文件。 39、请写出自少两个支持回调处理的 PHP 函数并自己实现一个支持回调的 PHP 函数 array_map,array_filter, array_walk 40、请写出自少两个获取指定文件夹下所有文件的方法代码或思路。 核心方法是 scandir, 核心思想是递归。 41、请写出自少三种截取文件名后缀的方法或函数PHP 原生函数和自己实现函数均可 echo substr(strrchr($file, .), 1);echo substr($file, strrpos($file, .)1);$arrexplode(., $file); echo $arr[count($arr)-1];$arrexplode(., $file); echo end($arr);echo strrev(explode(., strrev($file))[0]);echo pathinfo($file)[extension];echo pathinfo($file, PATHINFO_EXTENSION); 42、PHP 如何实现不用自带的 cookie 函数为客户端下发 cookie。对于分布式系统如何来保存 session 值。 这个题有点绕。考的还是 COOKIE 和 SESSION 的基础知识。服务端通过 set-cookie 命令来通知客户端保存 cookie。 只要按照 domain path 过期时间等规则 用 header 函数就可以实现。 分布式系统 session集中处理。按我们公司的架构为了实现高可用和高容灾提供一个分布式的验签服务。具体的可以看下 redis 的分布式服务架构。 43、请用 SHELL 统计 5 分钟内nginx 日志里访问最多的 URL 地址对应的 IP 是哪些 44、写一段 shell 脚本实现备份 mysql 指定库如 test) 到指定文件夹并打包并删除 30 天前的备份然后将新的备份推送到远端服务器完成后送邮件通知。 45、mysql 数据库中 innodb 和 myisam 引擎的区别 区别主要在数据和索引的存储结构和存储方式上以及对于事务的支持。 46、从用户在浏览器中输入网址并回车到看到完整的见面中间都经历了哪些过程。 入门问题。这个问题有一个很大的坑面试官可能会从这个问题下手问你一大堆问题。 以 PHP 为例通常最简单的回答从用户的电脑找到最近的 DNS 服务然后解析到对应的 IP 然后双方开始 HTTP 连接然后发送请求信息服务器拿到请求信息就开始准备回应的信息中间要经过 nginx 转发到 frstCGI (PHP-FPM), 然后 PHP 开始解析框架解析请求头部找到对应的 API该查数据库查数据该组装 HTML 组装 HTML完事了就重新返回给用户。用户拿到返回数据浏览器开始渲染页面JS 开始加载。 47、如何分析一条 sql 语句的性能。 explain具体的请百度。基本很少用性能分析语句。MYSQL 的表设计上尽量冗余一部分字段避免在 MYSQL 里处理大量的逻辑运算。我们是做 PHP 服务开发的mysql 语句能简单尽量简单。逻辑运算的地方可以在 PHP 里做。 48、ping 一个服务器 ping 不通用哪个命令跟踪路由包 linux:traceroute,windows:tracert 49、$a[0,1,2,3]; $b[1,2,3,4,5]; $a$b; var_dump ($a) 等于多少 基础问题。本质还是考 PHP 数组的结构和特点。 结果是 01235。PHP 用数字索引和 STRING 索引差别还是很大的 50、$a[1,2,3]; foreach ($a as $v){} foreach ($a as $v){} var_dump ($a) 等于多少 122此处有一坑。foreach 完之后$index , $value 并不会消失保留最后一次赋值。这里的第一次 foreach 之后数组中最后一个元素变成引用引用变量 $v 继续存在且指向数组的最后一个元素。第二次遍历因为遍历变量名是 $v , 所以等于说每次遍历都将此次遍历的值修改成最后元素的值直至到遍历最后一个元素引用元素因为此时数组的最后一个元素已被修改成上一个元素的值最后一次赋值就是 自己 自己。 故最后一个等于倒数第二个 阿布阿布2020最新大厂内部 PHP 高级工程师面试题汇总二​zhuanlan.zhihu.com 阿布阿布2020最新大厂内部 PHP 高级工程师面试题汇总三​zhuanlan.zhihu.com 更多学习内容可以访问 阿布阿布【对标大厂】精品PHP架构师教程目录大全只要你能看完保证薪资上升一个台阶持续更新​​zhuanlan.zhihu.com 以上内容希望帮助到大家很多PHPer在进阶的时候总会遇到一些问题和瓶颈业务代码写多了没有方向感不知道该从那里入手去提升对此我整理了一些资料包括但不限于分布式架构、高可扩展、高性能、高并发、服务器性能调优、TP6laravelYII2RedisSwoole、Swoft、Kafka、Mysql优化、shell脚本、Docker、微服务、Nginx等多个知识点高级进阶干货需要的可以免费分享给大家需要的可以加入我的PHP技术交流群953224940 进阶PHP月薪30k架构师成长路线【视频、面试文档免费获取】​shimo.im
http://www.hkea.cn/news/14282925/

相关文章:

  • 汕头网站建设浩森宇特广州市网站建设制作费用
  • 网站建设要注意哪些事情芜湖北京网站建设
  • 做最最优秀的视频网站泉州公司网站建设
  • 签名能留链接的网站网站建设价格差别
  • 如何利用模板建站网站底部版权信息代码
  • 高端的平面设计网站ios7风格网站
  • 珠宝 网站欣赏网页制作技术实训报告
  • 广州市建设工程招标管理办公室网站制作网站哪里好
  • 网站开发软件培训谷歌外链工具
  • 无锡网站制作的公司农村自建房设计图一层楼平面图
  • 恩施网站建设模板网络营销主要学些什么
  • 淄博企业网站建设价格企业网站建设ejiew
  • 电商模板下载的网站可以做长图的网站
  • html做网站在手机上显示上海app搭建
  • 蓝希菏泽网站建设打电话来说做网站 然后答应了
  • 网站团队人员曹县建设厅网站
  • 建网站在线支付怎么建设通网站原理
  • 绍兴市建设银行网站wordpress 搭建 查分系统
  • 网站 设计要求绿色国网app下载地址
  • 公司的个人网站怎么做单页面网站模板
  • 公司网站 个人备案app手机网站
  • 网站建设881m的带宽做网站可以吗
  • 可视化响应式网站建设永登网站设计与建设
  • 花都区手机版网站建设简单网页模板免费下载
  • 河北省建设网站的网站首页建站行业的发展前景
  • 网站是由多个网页组成的吗wordpress生成静态页
  • 搭建论坛网站使用的系统钓鱼网站链接
  • 山东济宁网站建设设计茶叶网站建站
  • 如何创建自己的网站链接有没有便宜的网站制作
  • 成都网站制作公司电话wordpress中英文菜单