算法编程
ZFJ_张福杰
一个有产品思想的程序猿,技术栈:iOS、Flutter、Python、小程序、Vue、Web
展开
-
算法-青蛙跳-斐波那契数列(OC、Swift、Python)
前言我们在面试的过程中,经常会有一些面试官会问到算法,当然’青蛙跳????‘也是会被问到比较多的一种算法(笔者今年面试就被问过两次,让我在白板和白纸上手写代码,虽然我非常讨厌手写代码,但是我还是用伪代码写出来了????),青蛙跳也叫做斐波那契数列,我们在上学的时候也学过;一般面试题目如下:????题目:一只青蛙一次可以条一级台阶也可以一次跳两级台阶,如果有n级台阶青蛙有多少种跳法?????分析1级:1种跳法,跳法...原创 2019-12-18 14:04:34 · 1163 阅读 · 2 评论 -
算法-DFA算法-敏感词过滤算法(OC、Swift、Python)
前言前段时间,公司的IM SDK想做敏感词过滤,但是后端的小伙伴《比较忙》,在开产品需求会的时候想把敏感词过滤放到前端,让iOS、安卓自己搞,但是前端小伙伴写了一个方法来检测一段文本,耗时一两秒钟而且比较耗CPU,这样肯定不行的,最后后端小伙伴妥协了,把敏感词过滤放到后端了。一般的思路可能是遍历敏感词库,然后把一段文字的敏感词过滤掉,但是针对比较大的词库时(比如我们的敏感词库10万),这样非...原创 2019-10-22 21:40:29 · 3906 阅读 · 3 评论 -
算法-哨兵查找法(OC、Swift、Python)
前言我们在一个数组中想查找某个对象item我们改如何操作呢?很简单一层遍历就可以搞定了,如下:- (NSInteger)searchNormal:(NSArray *)array item:(NSString *)item{ for(int i = 0;i<array.count;i++){ if(array[i] == item){ r...原创 2019-10-21 20:55:29 · 3492 阅读 · 2 评论 -
算法-二分查找算法(OC、Swift、Python)
前言二分查找在程序开发过程中是十分常见的算法,也是在程序员面试过程中关于算法的知识点考察过程中最常问的知识点;二分查找在实际开发过程中也常常用的到;就比如在一个一维有序数组中查找最大的一个数;我们可以每次都和数组中间的元素对比,然后缩小查找范围。二分查找是一个非常快速高效的查找算法,因为每次查找数据查找空间都会被缩小为原理数组长度的一半,直到查找空间为空,才结束查找。但是二分查找针对的是...原创 2019-10-18 17:35:42 · 594 阅读 · 0 评论