DS算法
文章平均质量分 90
程序员牛哥
编程10年,互联网创业者,技术作家。专注技术变现。本博客会输出我经历过的故事、开发教程、从业经验、源码推荐等内容。希望能够对大家有所帮助。
展开
-
彻底搞懂递归的时间复杂度
笔者编码10载,面过很多程序员简历上写着熟悉数据结构和算法,但是对于时间复杂度稍微深入点的问题,都回答的不怎么样,其实还是没懂搞懂算法时间复杂度是一个优先程序员的分水岭先来看letcode一道题,泰波那契序列 Tn 定义如下:T0 = 0, T1 = 1, T2 = 1, 且在 n >= 0 的条件下 Tn+3 = Tn + Tn+1 + Tn+2给你整数 n,请返回第 n 个泰波那契数 Tn 的值。示例 1:输入:n = 4输出:4解释:T_3 = 0 + 1 + 1 = 2.原创 2021-09-15 00:25:58 · 14778 阅读 · 12 评论 -
全排列思路解析附C语言实现
全排列这个问题,几乎是面试必问的问题,考察面试者递归,逻辑分析问题的能力笔者在10年看谭浩强的c语言的时候,就接触过这个算法,只可惜那时候老师并没有严格让我们去实现自己学习的时候也偏注重语法的理解,对于复杂算法学习还是不深究光阴如梭一晃眼,10年过去了,我已经为人父,经历很多项目,越来越觉得算法,时间复杂度是程序员的分水岭,特别是进大厂资质驽钝,但知骐骥一跃,不能十步;驽马十...原创 2020-04-21 10:21:24 · 1500 阅读 · 0 评论 -
cocoscreator A* 寻路算法
let Grid = cc.Class({ ctor(){ this.x = 0; this.y = 0; this.f = 0; this.g = 0; this.h = 0; this.parent = null; this.type = 0; // -1障碍物, 0正常...原创 2020-04-17 21:48:45 · 1319 阅读 · 1 评论 -
vecotr取最大元素
#include <vector>#include <iostream>#include <algorithm>using namespace std;struct player{ int score; string name;};player *findHighest(vector<player> &l...原创 2020-04-16 20:30:50 · 145 阅读 · 0 评论 -
设计并实现一个函数, 功能为给定一个存储为随机整数的数组,从中删除所有值为i的整数
面试遇到的一个算法题,竟然没有考虑到数字可能重复,现在写出解决办法设计并实现一个函数, 功能为给定一个存储为随机整数的数组,从中删除所有值为i的整数(js和lua版本也可function removeElement(a, t) { for (let i = 0; i < a.length; i++) { if (a[i] == t) { ...原创 2020-04-11 18:43:29 · 177 阅读 · 0 评论 -
算法回顾之 冒泡排序
最简单的算法,今天再写一下笔者学习算法走了误区,一开始的游戏急于求成,并没有真正理解算法,就网上抄一个,以为自己会了,工作这么多年,发现走了弯路了,算法的学习不能死记硬背,必须根据算法原理,自己脑子思考得出代码,这样才是真正理解了算法,也活学活用void BubbleSort(int *a,int n){ int t = 0; for(int i=0;i<...原创 2020-03-26 23:07:50 · 105 阅读 · 0 评论