ARTS 挑战(第三周)

ARTS 挑战(第三周)

> 每周完成一个ARTS: 每周至少做一个 leetcode 的算法题、阅读并点评至少一篇英文技术文章、学习至少一个技术技巧、分享一篇有观点和思考的技术文章。(也就是 Algorithm、Review、Tip、Share 简称ARTS)

Algorithm

> 主要是为了编程训练和学习。每周至少做一个 leetcode 的算法题(先从Easy开始,然后再Medium,最后才Hard)。进行编程训练,如果不训练你看再多的算法书,你依然不会做算法题,看完书后,你需要训练。关于做Leetcode的的优势,你可以看一下我在coolshell上的文章 Leetcode 编程训练 – 酷 壳 – CoolShell。

LeetCode 1. 两数之和 解题语言 PHP

题:

给定字符串J 代表石头中宝石的类型,和字符串 S代表你拥有的石头。 S 中每个字符代表了一种你拥有的石头的类型,你想知道你拥有的石头中有多少是宝石。

J 中的字母不重复,J 和 S中的所有字符都是字母。字母区分大小写,因此"a"和"A"是不同类型的石头。

示例:

输入: J = "aA", S = "aAAbbbb"
输出: 3

解:

class Solution {

/**
* @param String $J
* @param String $S
* @return Integer
*/
function numJewelsInStones($j, $s) {

$jArr = str_split($j);
$sArr = str_split($s);
$i = 0;
foreach($sArr as $sItem){
if(in_array($sItem, $jArr)){
$i++;
}
}
return $i;

}
}

排名

> 执行用时 : 16 ms, 在Jewels and Stones的PHP提交中击败了97.44% 的用户

> 内存消耗 : 14.2 MB, 在Jewels and Stones的PHP提交中击败了100.00% 的用户

Review

> 主要是为了学习英文,如果你的英文不行,你基本上无缘技术高手。所以,需要你阅读并点评至少一篇英文技术文章

提问的智慧-How To Ask Questions The Smart Way

Tip

> Tip:主要是为了总结和归纳你在是常工作中所遇到的知识点。学习至少一个技术技巧。你在工作中遇到的问题,踩过的坑,学习的点滴知识。

  • !empty($arr_input['step']) and $step = $arr_input['step']); 短小精悍,基础不好可能都看不懂
  • 前端时间准备重新找工作,对高可用有了些新认知。下周总结一篇文章
  • try catch 用好了可以少些一些代码
  • 构建商品表时建议多一个编号字段,之前通过goods_id区分不同商品最大的问题是暴露了数据库结构。编号有效避免了这个问题。
  • 聊天做事都需要调理,特别是面试时让你说说以往的项目。关于项目调理:公司->公司人员架构->主营业务->项目背景->团队->技术栈->收获。顺着项目经验你也可以聊聊自己的技术成长:
  1. 代码规范
  2. 设计模式
  3. 性能优化及稳定性
  4. HTTP/TCP 协议,架构,框架源码。
    简历中应该突出技术重点,而我却过于白话。

> Share:主要是为了建立你的影响力,能够输出价值观。分享一篇有观点和思考的技术文章。

原文地址:
离开 CGI,FastCGI,PHP-FPM 谈高可用挺空中楼阁的!

发表评论

电子邮件地址不会被公开。 必填项已用*标注