首页
学习
活动
专区
圈层
工具
发布
    • 综合排序
    • 最热优先
    • 最新优先
    时间不限
  • 来自专栏技术面面观

    工程师应该学点算法——图论2

    这还是从图的算法说起。前篇 -> 图论1 图的遍历 在图的遍历中我们一定要掌握两种最基础的算法:深度优先 和 广度优先。 深度优先遍历(DFS) 这种遍历算法可以想象成在玩迷宫,我们选择一个方向走到底,直至不能走了然后再返回一步继续尝试其他的方向,在代码中就是递归+回溯,这就是 深度优先遍历。 如下表所示,我先将1入队列 队列 入队列节点 出队列节点 已经标记的节点 [o] 1,2,3 0 0,1,2,3 [1,2,3] 没有(这里没有入队列,因为2,3是已经标记的节点) 1 0,1,2,3 [2,3,5,6] 5 6(0,1已经被标记,不会入队列) 2 0,1,2,3,5,6 ... ... ... ... 表示有路可以走 邻接矩阵(二维数组): 0(你) 0 1 0 0 0 0 0 0 0 1 0 0 1 0(小美) 0 0 0 0 1 答案见文末【阅读全文】 图的应用 社交网络:QQ推荐好友功能 知识图谱:推荐算法

    49720发布于 2019-12-19
  • 来自专栏机器学习AI算法工程

    算法工程师-机器学习面试题总结(2)

    优化算法用于找到使损失函数最小化的模型参数,常见的优化算法包括 1. 梯度下降(Gradient Descent):梯度下降是最基本的优化算法之一,通过计算损失函数关于参数的梯度方向进行参数更新。 2. 梯度下降的效率:逻辑回归常常使用梯度下降算法来优化模型参数。而梯度下降算法对于特征数值范围较大的情况可能收敛较慢,甚至可能无法收敛。 优点 (1)理论成熟简单,易于理解及算法实现; (2) 可以用于多分类分类、回归等; 缺点 (1)需要计算待分类样本与所有已知样本的距离,计算量大; (2)样本容量小或样本分布不均衡时,容易分类错误,后者可通过施加距离权重进行改善 ; K近邻(KNN)算法中的k值如何选取? Kd树的建树和搜索算法都可以通过递归实现,其中切分超平面的选择策略和距离计算方法具体取决于应用场景和算法设计。 支持向量机SVM 简单讲解SVM模型原理?

    98440编辑于 2023-09-04
  • 来自专栏接地气学堂

    算法工程师之死

    于是,很多企业咬牙跺脚,出高薪,聘请来自互联网大厂的算法工程师、数据挖掘工程师、数据建模师,期望他能做出超厉害模型。“只要你能预测精准了,那我肯定能如鱼得水”是他们的口头禅。 又刚好,一批2019年左右混入所谓互联网大厂的算法工程师们,被裁员了,以为自己可以打着“前头腾阿高级算法工程师”旗号收割一波传统企业,从此乌鸡变凤凰,走上人生巅峰。两者一拍即合。 2、有的产品是业务的心头肉,只要出一点问题,那就是千刀万剐。 3、有的产品先天短腿,功能不行、定价不合理,根本干不过竞品,推荐算法有毛用。 而且常常看头2周买得好,就拼命加,结果导致积压。看头2周差就都不想做,能甩就甩。最后整体数据偏差大,反而回头怪算法预测的不准。 知道这帮孙子的搞法,于是,一个优化方案出炉。 ,为啥还要小妹来帮忙,你看人家抖音不都是算法工程师做的??”

    49531编辑于 2022-06-13
  • 来自专栏木东居士的专栏

    数据工程师算法

    翻出来了17年自己梳理的数据工程师算法学习内容,当时的理解和现在会有些许不同,但整体来看还是可以的,有一些比较细节的内容并没有花较多的时间来整理,留待大家自己补充了,在此不再做任何修改分享给大家参考, 该图中包含的算法范围可能会比较广,当然大家在学习的时候也可以有所取舍,根据居士个人经验,简单举例说明一下几大块算法对数据工程师的重要性,或者说是学习建议吧: 分布式算法:大数据相关的同学必备,日常工作可能使用不多 大数据算法:偏ETL和基于大数据平台开发的同学最好多做了解,现在很多大数据处理的背后都隐藏了这些大数据相关的算法,比如ES、Kylin、Hadoop。 其它算法:这里列了一些日常工作会遇到,但是一般不需要我们了解太深的算法,比如加密、压缩和调度算法,这些最好是有所了解知道不同算法的作用和区别,但是如果项目不太需要,不必学的特别深。 ok,大致就这些内容,如果此图对你有帮助,欢迎开启你的算法学习道路!

    70450发布于 2019-05-17
  • 来自专栏技术总结

    算法2

    有两个算法 A 和 B ,假设两个算法的输入规模都是 n,算法 A 要做 2n+3 次操作,算法 B 要做 3n+1 次操作。觉得谁快?看下图: ? 而当 n = 2 时,两者效率相同;当 n > 2时,算法 A 就开始优于算法 B 了,随着 n 的增加, 算法 A 比算法 B 越来越好了,得出结论,算法 A 好过 算法 B 判断一个算法的效率时,函数中的常数和其他次要项常常可以忽略 2、在修改后的运行次数函数中,只保留最高阶项。 3、如果最高阶项存在且不是1,则去除与这个项相乘的常数,得到的结果就是大O阶 3、常数阶 高斯算法,时间复杂度不是O(3),而是O(1)。 //第二种算法 int sum = 0, n = 100; /*执行1次*/ sum = (1 + n) * n/2; /*执行1次*/ printf( 也就是说,有多少个2相乘后大于n,则会退出循环。由2× = n ,得到 x = ㏒2n (2缩小)。所以这个循环的时间复杂度为O(㏒n)。

    1.1K90发布于 2018-05-22
  • 来自专栏AI科技评论

    干货 | 让算法解放算法工程师——NAS 综述

    2 链式架构空间(左图)与多分支架构空间(右图) 2. VGG19 等模型已经证明直筒的链式结构容易造成梯度弥散,卷积网络无法使层数更深。 有些算法提出通过预测神经网络模型的准确率、学习曲线、验证曲线等来改进代理度量,预测准确率低/学习曲线差的子网络暂停训练或直接放弃。 2. 权值共享。 图 5 AutoML 开源框架全景图 AutoML 框架能帮助算法工程师减轻负担,降低特征工程和超参数调优的工作量,NAS 可以完成模型的构建,基于 AutoML 的一揽子解决方案(如图 5 包含 AutoML 目前 Cloud AutoML 的费用是 20 美金/小时,相当于国内算法工程师的时薪。 机器学习的平台化降低了 AI 产品的使用成本,最终会降低机器学习的准入门槛,但提高了个人的职业门槛。 工业时间业务不止模型调参那么简单,需要结合很多图像数据的先验知识,随着 NAS 的发展,也许不能取代 100% 的人力成本,但是在项目团队中解放 50% 以上的算法工程师还是可行的。

    1.8K10发布于 2018-09-21
  • 来自专栏牛客网

    阿里算法工程师面经

    从事iOS两年,转算法工程师的历程。 技术题目: * 1、讲一下SVM的原理,核函数,以及和LR的区别 * 2、GBDT、XGBoost、LightGBM三个算法的原理和区别 * 3、梯度下降和随机梯度下降 * 4、如何防止过拟合 * 5、 反向传播算法 非技术问题: * 1、你是怎么自学的 * 2、你是有自己的工作,边工作边学习,如何利用时间 * 3、做了哪些项目? 总结失败的经验,我对每个算法是理解了,但是对算法的应用场景思考不多,也没有经验,对于应用方面回答不好,所以失败。所以总结对算法的学习,需要从原理,和其他算法的优缺点,以及应用场景去把握,面试才不可怕。 大学,但是简历关都被刷了很多,历程坎坷,幸好还是顺利踏入算法工程师的行业,且看未来吧。

    1.1K60发布于 2018-06-07
  • 来自专栏PPV课数据科学社区

    阿里电话面试(算法工程师)

    所以我也经常无私的去帮助陌生人和朋友,无论是生活还是编程上,你也可以试试~ 因为我导师的研究方向是数据挖掘和自然语言处理,同时毕业设计在做知识图谱和实体对齐相关的研究,自己对这部分挺感兴趣的,所以申请了“算法工程师 职位描述 算法工程师:自然语言处理(NLP)、图像处理、语音识别、机器学习、分布式并行算法、数据挖掘、推荐搜索、复杂网络、深度学习、广告、机器翻译 岗位描述:如何从海量商品中找到最合适的商品、推荐和搜索系统 最小生成树普里姆算法、最短路径Dijkstra算法、Floyd算法。 PS: 前些天无聊百度了下图灵奖获得者,确实都是些大牛啊!那些XXX算法和XX语言的发明者基本都是其中的成员之一。 2.第二个是我说出了自己以后的想成为一名老师,是否不应该说出来? 3.第三个就是最后忘记问面试官的姓名了,是否应该询问? 面试官:你Pointwise采用的是什么算法? 面试官:你采用的是什么算法? 作者:实体对齐准备采用CURE聚类的算法实现,属性对齐采用Word2Vec计算相似距离实现。 面试官:具体的算法过程能描述下吗?

    1.6K40发布于 2018-04-18
  • 来自专栏机器学习AI算法工程

    阿里电话面试(算法工程师)

    所以我也经常无私的去帮助陌生人和朋友,无论是生活还是编程上,你也可以试试~ 因为我导师的研究方向是数据挖掘和自然语言处理,同时毕业设计在做知识图谱和实体对齐相关的研究,自己对这部分挺感兴趣的,所以申请了“算法工程师 职位描述 算法工程师:自然语言处理(NLP)、图像处理、语音识别、机器学习、分布式并行算法、数据挖掘、推荐搜索、复杂网络、深度学习、广告、机器翻译 岗位描述:如何从海量商品中找到最合适的商品、推荐和搜索系统 最小生成树普里姆算法、最短路径Dijkstra算法、Floyd算法。 PS: 前些天无聊百度了下图灵奖获得者,确实都是些大牛啊!那些XXX算法和XX语言的发明者基本都是其中的成员之一。 2.第二个是我说出了自己以后的想成为一名老师,是否不应该说出来? 3.第三个就是最后忘记问面试官的姓名了,是否应该询问? 面试官:你Pointwise采用的是什么算法? 面试官:你采用的是什么算法? 作者:实体对齐准备采用CURE聚类的算法实现,属性对齐采用Word2Vec计算相似距离实现。 面试官:具体的算法过程能描述下吗?

    2.6K80发布于 2018-03-09
  • 来自专栏华章科技

    阿里电话面试(算法工程师)

    所以我也经常无私的去帮助陌生人和朋友,无论是生活还是编程上,你也可以试试~ 因为我导师的研究方向是数据挖掘和自然语言处理,同时毕业设计在做知识图谱和实体对齐相关的研究,自己对这部分挺感兴趣的,所以申请了“算法工程师 职位描述 算法工程师:自然语言处理(NLP)、图像处理、语音识别、机器学习、分布式并行算法、数据挖掘、推荐搜索、复杂网络、深度学习、广告、机器翻译 岗位描述:如何从海量商品中找到最合适的商品 最小生成树普里姆算法、最短路径Dijkstra算法、Floyd算法。 PS: 前些天无聊百度了下图灵奖获得者,确实都是些大牛啊! 面试官:你Pointwise采用的是什么算法?请详细说说。 作者:我们采用PRank算法实现的,它是一种回归的算法。 面试官:你采用的是什么算法? 作者:实体对齐准备采用CURE聚类的算法实现,属性对齐采用Word2Vec计算相似距离实现。

    2.3K20发布于 2018-08-17
  • 来自专栏全栈程序员必看

    图像处理算法工程师——1必备技能总结——2面试题大全

    图像算法工程师三重境界 : 一、传统图像算法工程师: 主要涉及图形处理,包括形态学、图像质量、相机成像之3A算法、去雾处理、颜色空间转换、滤镜等,主要在安防公司或者机器视觉领域,包括缺陷检测; 算法工程师包括: 音/视频算法工程师(通常统称为语音/视频/图形开发工程师) 图像处理算法工程师 计算机视觉算法工程师 通信基带算法工程师 信号算法工程师 射频/通信算法工程师 自然语言算法工程师 数据挖掘算法工程师 搜索算法工程师 控制算法工程师(云台算法工程师,飞控算法工程师,机器人控制算法) 导航算法工程师 其他【其他一切需要复杂算法的行业 2面试题大全 1-图像基础知识: 1.常用的图像空间。 2.简述你熟悉的聚类算法并说明其优缺点。 3.请描述以下任一概念:SIFT/SURF LDA/PCA 4.请说出使用过的分类器和实现原理。 8.用具体算法举例说明监督学习和非监督学习的区别。 2-笔试 大概有: 1.表示图像的特征有哪些?

    2.2K41编辑于 2022-08-29
  • 来自专栏AngelNI

    排序算法-2

    start++] =arr[p]; } } void mergesort(ll *A,ll start,ll end) { if(start<end) { ll mid = (start+end)/2; = a[i]; a[i] = a[j]; a[j] = t; } void heapify(ll *tree,ll n,ll i) { if(i>=n) return ; ll c1 = 2* i+1; ll c2 = 2*i+2; ll max = i; if(c1<n&&tree[c1]>tree[max]) { max = c1; } if(c2<n&&tree[c2]> tree[max]) { max = c2; } if(max ! = i) { swap(tree,max,i); heapify(tree,n,max); } } void heapsort(ll *a,ll n) { for(ll i =n/2-1;

    30610发布于 2020-04-14
  • 来自专栏修也的进阶日记

    算法手记2

    NC296 最小花费爬楼梯 牛客网题目链接(点击即可跳转):NC296 最小花费爬楼梯 题目详情: 本题详情如下图: 题目思路: 本题解题思路如下: 基础动态规划,1.写出动态转换方程2. vector<int>& cost) { vector<int> dp; dp.resize(cost.size()+1); for(int i=2; i<=cost.size();i++) dp[i]=min(dp[i-1]+cost[i-1],dp[i-2]+cost[i-2]); return dp[cost.size ()]; } }; 结语 说点啥好呢...不断修补细节然后提高效率,不断学习算法并应用出肌肉记忆.

    13200编辑于 2025-03-14
  • 来自专栏Article

    算法 Day 2

    冒泡排序 平均时间复杂度 O(n2) 空间复杂度 O(1) function bubbleSort(arr) { var i = arr.length; var position =

    13010编辑于 2022-06-14
  • 来自专栏数据科学与人工智能

    算法算法工程师,技术与技术人员

    (注:标题里的算法,指机器学习算法,或者说“算法工程师”这个职位名称里的“算法”,不是“算法与数据结构”里的那个算法。 谁能告诉我有没有什么更好的名字来区别这它们,或许是“机器学习算法”与“传统算法”?) 算法算法工程师 先来一段我在知乎里回答“做算法工程师是一种怎样的体验?” 算法工程师可能只需用类似Hive的方式,写几个类似SQL的语句就可以完成模型的训练、交叉验证、参数优化等工作。 而机器唯一不能替代的就是对数据的理解,这是算法工程师存在的价值。 而数据是和业务强相关的,算法工程师将更加接近产品经理的角色,而不是程序员。深入理解数据、业务和产品,寻找模型和它们的结合点,将成为算法工程师的核心竞争力。 这里刘同学提出一个问题,那就是算法工程师算法需要理解到何种程度?事实是,即使从算法的应用出发,工程师也需要掌握模型的优缺点、适用场景、模型选择、参数调优等技术。

    1K70发布于 2018-02-28
  • 来自专栏云深之无迹

    Python 算法.2

    如果 a+b+c=1000,且 a^2+b^2=c^2(a,b,c 为自然数),如何求出所有a、b、c可能的组合? + b**2 == c**2 and a+b+c == 1000: print("a, b, c: %d, %d, %d" % (a, b, c)) end_time + b**2 == c**2: print("a, b, c: %d, %d, %d" % (a, b, c)) end_time = time.time() print("elapsed (nlogn) < O(n2) < O(n3) < O(2n) < O(n!) = Timer("test2()", "from __main__ import test2") print("append ", t2.timeit(number=1000), "seconds")

    57730发布于 2021-04-28
  • 来自专栏数字芯片

    硬件工程师笔试题【2

    2、选择电阻时要考虑什么? 主要考虑电阻的封装、功率、精度、阻值和耐压值等。 3、在CMOS电路中,要有一个单管作为开关管精确传递模拟低电平,这个单管你会用P管还是N管,为什么 答:用 N 管。 集成电路前端设计流程可以分为以下几个步骤:(1)设计说明书;(2)行为级 描述及仿真;(3)RTL 级描述及仿真;(4)前端功能仿真。 所以在短沟道中,速度是饱和的,漏极电流方程也发生了变化,这种由有况下饱和电流不是由于沟道夹断引起的而是由于速度饱和 18、画状态机,接受 1、2、5 分钱的卖报机,每份报纸 5 分钱。 假设投入 3 个 2 分硬币或者投入 4 个 1 分硬币和 1 个 2 分硬币后,卖报机在给出报纸的同时会找会 1 个 1 分硬币。这是 输出变量有两个,分别用 Y 和 Z 表示。 同时假定未投币时卖报机的初始状态为 S0, 从开始到当前时刻共投入的硬币面值为 1 分记为 S1,为 2 分时记为 S2,为 3 分 记为 S3,为 4 分时记为 S4。

    2.5K31发布于 2020-07-20
  • 来自专栏技术杂记

    BattlEye逆向工程师跟踪(2

    该枚举例程检查在shellcode和手动映射的可移植可执行文件中经常出现的内存异常22手动映射可执行文件是复制Windows图像加载器的过程 这是通过枚举所有进程及其各自的线程来完成的。 driver_folder_handle); } } battleye::send(&thread_report.pad, 0x2A 2 : 1; if ( search_index >= search_count ) break; // SEARCH CURRENT PROCESS BEFORE LSASS if report.pad = 0; report.id = 0xBEu; battleye::send(&v313, buffer_size + 2,

    1.2K580发布于 2021-02-09
  • 来自专栏数据云团

    算法篇-python排序算法-2

    让指定的元素归位,就是放到它应该放的位置(左边元素比它小,右边元素比他大),然后对每个元素归位,完成排序。

    65330发布于 2019-07-18
  • 来自专栏码农帮派

    LeetCode中级算法-回溯算法2

    子集 [题目] 给定一个不包含重复元素的数组,返回该数组所有可能的子集 [输入] [1,2,3] [返回] [[] [3] [2] [2 3] [1] [1 3] [1 2] [1 2 3]] [解法 所以我们在回溯index元素的时候,可以根据这两种状态分别进行回溯 [代码实现] package main import "fmt" func main() { input := []int {1,2,3 [ ["A","B","C","E"], ["S","F","C","S"], ["A","D","E","E"], ] [输入1] "ABCCED" [返回1] true [输入2] "ABCS" [返回2] false [解法] 这个题目的解点是第i个元素的上下左右是不是下一个元素,遍历整个字符串,当遍历到第i个字符串的时候,需要在上一个字母的坐标周围(上下左右)找到第i个字母

    48720发布于 2021-01-12
领券