首页
学习
活动
专区
圈层
工具
发布
    • 综合排序
    • 最热优先
    • 最新优先
    时间不限
  • 来自专栏全栈程序员必看

    JavaScript算法笔试

    版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。

    28720编辑于 2022-11-10
  • 来自专栏全栈工程师修炼之路

    常规笔试算法总结.md

    2)有些问题使用递归使得代码简洁易懂(例如你可以很容易的写出前中后序的二叉树遍历的递归算法,但如果要写出相应的非递归算法就不是初学者可以做到的了。) ** 3 temp //= 10 # 注意这里要使用地板除哦~ (即 从最低取开始取值) if sum == i: print(i) 欧几里德算法 /usr/bin/python #辗转相除法(欧几里德算法|计算大数效率高) #方式1: def gcd(x,y): while 1: temp = x % y { // 1.约瑟夫环 System.out.println("幸运人的编号 : " + getLuckly(8)); } /** * getLuckly : 实现约瑟夫环算法

    46310发布于 2020-10-23
  • 来自专栏全栈工程师修炼之路

    常规笔试算法总结.md

    2)有些问题使用递归使得代码简洁易懂(例如你可以很容易的写出前中后序的二叉树遍历的递归算法,但如果要写出相应的非递归算法就不是初学者可以做到的了。) ** 3 temp //= 10 # 注意这里要使用地板除哦~ (即 从最低取开始取值) if sum == i: print(i) 欧几里德算法 /usr/bin/python #辗转相除法(欧几里德算法|计算大数效率高) #方式1: def gcd(x,y): while 1: temp = x % y { // 1.约瑟夫环 System.out.println("幸运人的编号 : " + getLuckly(8)); } /** * getLuckly : 实现约瑟夫环算法

    34620编辑于 2022-09-28
  • 来自专栏全栈程序员必看

    阿里算法内推笔试

    版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。

    26520编辑于 2022-09-30
  • 来自专栏zjblog

    面试:算法相关笔试

    笔试题,面试问到的内容和一些项目的东西记下来,方便以后回顾。 就相当于总结吧,然后可以在面试的时候手机放桌上开录音,录下来,回去复盘也好整理~ 今天做的两笔试题,题目不算难,做了快两小时,走了很多弯路,还好是能用myeclipse,要是手写肯定gg,调错都不好调。 毕竟算法这块还需要学习~ 题目一: 小明的女朋友最喜欢在网上买买买了,可是钱包里钞票有限,不能想买啥就买啥。面对琳琅满目的物品,她想买尽可能多的种类,每种只买一件,同时总价格还不能超过预算上限。

    44510编辑于 2022-06-21
  • 来自专栏码洞

    BAT 经典算法笔试题 —— 逆转单向链表

    老钱就是这样吃了很多亏的程序员,不喜欢准备面试,不喜欢吹嘘虚假的不存在的经验和能力,甚至连网上的笔试题都懒得做,因为在实际工作中这些鸟题根本一点都用不上。 那还有一个方法就是在笔试阶段大显身手,让自己优秀的代码能力跃然纸上,让面试官瞬间对你产生不一样的感觉。 不要被笔试阶段那些算法题给吼到了,在你眼里似乎它们是为程序天才们准备的。 其实大多数公司的笔试题也是来源于网上,那些被无数人做烂的题目。你被题目搞晕了而别人没有,那是因为别人已经做过这道题了,而不是智商所致。 期望在那短短的笔试题环节就轻松搞定这道题,那真是非常有算法天赋的人才能做到的事。难道大厂里面的程序员个个都是天才,鬼才相信。天才总是极少数的,多数都是像老钱这样的庸才。 好,言归正传,下面我们开始讲解今天的算法题 —— 逆转单向链表。首先这是一个单向的链表,不同于 Java 里面的 LinkedList,它是双向的链表。

    91410发布于 2019-01-23
  • 来自专栏cwl_Java

    经典笔试题-JAVA实现快速排序算法

    版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。

    83710发布于 2019-11-18
  • 来自专栏全栈程序员必看

    【C++】0314算法阿里笔试题「建议收藏」

    一、题目 二、 自己的dfs的题解 我并没有参加这个笔试,这种方法应该A不了所有用例,有什么错误的地方恳请指导指导(* ̄︶ ̄) respect #include <bits/stdc++.h> ; string s = "1231"; cout<<"最小的次数:"<<leastNum(s, 5)<<endl; // 结果为2 } 在牛客上看到的大佬的DP做法,如下: 其余的题目信息见:阿里笔试 (0314算法岗) #include<bits/stdc++.h> using namespace std; typedef long long ll; vector<int> gao(ll n, int

    35130编辑于 2022-10-05
  • 来自专栏labuladong的算法专栏

    关于算法笔试,东哥又整出套路了🤔

    算法认准 labuladong 东哥带你手把手撕力扣 我知道各位是被标题吸引进来的,那就不废话,先说几个算法笔试的硬核套路,再说说语言选择和做题复习的策略。 编程语言的选择 仅从做算法题的角度来说,我个人比较建议使用 Java 作为笔试的编程语言。 比如说我们前文写到的 表达式求值算法 是一个困难级别的算法,但如果用 Python 内置的 exec 函数,直接就能算出答案。 笔试的时候最怕的是没思路,所以把各种题型都过目一下,起码心里不会慌,只要有思路,平均一道题二三十分钟搞定还是不难的。 本文我简单介绍了几个笔试算法的技巧,各位好好品味~ 最后,请秋招的同学多向身边的朋友推荐 labuladong 公众号。算法真的没那么难,这一切只是手段而已,过算法笔试拿 offer 才是目的。

    72920发布于 2021-09-23
  • 来自专栏鳄鱼儿的技术分享

    算法ACM 笔试:python如何处理多行输入

    前言 在ACM模式的编程竞赛,或面试算法机试(华为等)中,如何处理输入数据是一项基本技能。 如果我们使用 Python 解题,该如何处理数据的输入?

    1.7K11编辑于 2024-12-29
  • 来自专栏五分钟学算法

    广联达0913秋招算法笔试真题解析

    今天更新的是广联达0913秋招笔试真题中的一题。 作者:猛哥 题目描述 小明在梦中困在一个迷宫里了。迷宫太难了,小明发动特殊能力让迷宫变得简单起来。 代码 Python # 作者:闭着眼睛学数理化 # 算法训练营咨询微信:278166530 from collections import defaultdict def dfs(neighbor_dic

    66020编辑于 2023-09-20
  • 来自专栏ReganYue's Blog

    【Java程序算法题】紫龙游戏 笔试

    题目B:大量字符排序 输入大量英文字符,请Java编程实现尽可能快的排序算法。时间复杂度低者为优。

    48220发布于 2021-09-16
  • 来自专栏challenge filter

    算法-字节笔试-中等难度】Tarjan算法求解公共祖先问题LCA,并介绍倍增算法

    今天字节笔试的第二题,详情由于保密协议不能上网,但是大意就是给一大堆节点,去求LCA。 递归直接爆栈,用stack写递归有一个点,改进优化了一下有两个点…… 我印象中这个算法挺简单的,就搜了一下,果然找到了。不是,现在校招算法题都这么丧病了吗。 由于保密协议,不能放代码。 后面放Tarjan算法学习笔记。 LCA问题参考资料, Tarjan的时间复杂度为O((n+q)× 并查集的复杂度 ),而使用路径压缩和按秩合并的并查集复杂度为O(Alpha(n))。 所以作为离线算法,Tarjan比倍增算法快很多。 但作为在线算法,倍增算法能实时得到解法。 RMQ 复杂度介绍: Tarjan的复杂度为O(n+q) RMQ预处理为O(nlogn),查询O(1) 倍增算法复杂度为O((n+q)logn) 参考资料: Tarjan求解LCA,非常好的教学,很详细地列举了

    42910编辑于 2022-06-17
  • 来自专栏全栈程序员必看

    笔试面试算法经典–最长回文子串

    Manacher 时间复杂度O(n),空间复杂度O(n)观察上面的中心扩展法,发现遍历到每一个元素的时候都要进行一次中心扩展,完全没有利用前面回文子串的信息,Manacher算法的核心思想,就是利用前面遍历的时候产生的回文子串 综合上面三种情况:其实可以的到下面的公式 由于manacher算法与上面中心扩展法有一样的问题,所以先向字符串中插入#,如下图: 在上面的基础上: 引入一个辅助变量MaxRight,表示当前访问到的所有回文子串

    59830编辑于 2022-06-28
  • 来自专栏章鱼的慢慢技术路

    数据结构与算法笔试面试题整理

    给出的一些常见的数据结构与算法笔试面试题,特整理如下,后期遇到新的再更新。 笔试面试题 常见时空复杂度有 常数级复杂度:O(1) 对数级复杂度:O(logN) 线性级复杂度:O(N) 线性对数级复杂度:O(NlogN) 平方级复杂度:O(N2) 冒泡排序算法(重点) (1)算法流程 (N代表元素个数) 评价时间复杂度O(N^2),比较稳定的排序方法,对样本的有序性敏感 插入排序算法 (1)算法流程 a.从第一个元素起,该元素可以认为已经有序 b.从下一个元素起依次取出,让取出的元素依次与左边的有序数列进行比较 平均时间复杂度O(N^2),比较稳定的排序方法,对样本的有序性非常敏感,但是插入排序算法的赋值次数比冒泡少,因此一般情况下略优于冒泡排序  选择排序 (1)算法流程 a.从第一个元素起依次取出,并且假定取出的元素为最小值 的前后顺序,所以不稳定 快速排序算法 (1)算法流程 a.从样本数列中选择中间元素作为基准值,单独保存起来; b.重组样本数列,将所有小于基准值的元素放在基准值的左边,将所有大于基准值的元素放在基准值的右边

    1.8K30发布于 2018-09-28
  • 来自专栏程序员开发工具

    笔试题—字符串常见的算法题集锦

    https://blog.csdn.net/gdutxiaoxu/article/details/52602327 笔试题—字符串常见的算法题集锦 本篇博客主要讲解以下四个问题 KMP算法 字母倒序输出 gdutxiaoxu/article/details/52602327 例子源码下载地址: http://download.csdn.net/detail/gdutxiaoxu/9635393 KMP算法 关于KMP算法的分析,这里就不讲解了,有兴趣的可以参考这篇博客:从头到尾彻底理解KMP 代码如下 package com.xujun.stringfind; public class KMPFind "); combination(chars); } } 题外话 已经有20多天没更新博客了,主要是因为家里有事,回家了十来天,最近又在校招,有时候参加宣讲会与招聘,有时候在准备笔试和面试的东西

    1.1K10发布于 2018-09-18
  • 来自专栏海天一树

    某公司自然语言处理算法笔试

    1 请列出几种文本特征提取算法 答:文档频率、信息增益、互信息、X^2统计、TF-IDF 2 简述几种自然语言处理开源工具包 答:LingPipe、FudanNLP、OpenNLP、CRF++、Standord CoreNLP、IKAnalyzer 3 简述无监督和有监督算法的区别 答: (1)有监督学习:对具有概念标记(分类)的训练样本进行学习,以尽可能对训练样本集外的数据进行标记(分类)预测。 PS:部分带标记的是半监督学习 (3)训练集有输入有输出是有监督,包括所有的回归算法分类算法,比如线性回归、决策树、神经网络、KNN、SVM等;训练集只有输入没有输出是无监督,包括所有的聚类算法,比如k-means 、PCA、 GMM等 4 请简述几种熟悉的分类算法 答:kNN,kMeans,决策树,随机森林等 5 以下代码是Java实现中文分词,请简述分词过程 public class SplitChineseCharacter

    87870发布于 2018-04-17
  • 来自专栏码洞

    BAT 经典算法笔试题 —— 磁盘多路归并排序

    磁盘多路归并排序算法的输入是来自多个磁盘文件的有序键值对,在内存中将这些文件的键值对进行排序,然后输出到一到多个新的磁盘文件中。 ? 多路归并排序在大数据领域也是常用的算法,常用于海量数据排序。 下面我们来亲自实现一下磁盘多路归并算法,为什么是磁盘,因为它的输入来自磁盘文件。 算法思路 我们需要在内存里维护一个有序数组。每个输入文件当前最小的元素作为一个元素放在数组里。 当数组空了,说明所有的文件都处理完了,算法就可以结束了。 ? 二分查找 需要特别注意的是Java 内置了二分查找算法在使用上比较精巧。 public class Collections { ... 将上面的类都准备好之后,排序算法很简单,代码量非常少。对照上面算法思路来理解下面的算法就很容易了。

    1.5K30发布于 2019-03-01
  • 来自专栏Java后端技术栈cwnait

    笔试题:了解穷举算法吗?如何用代码实现

    穷举算法依赖于计算机的强大计算能力来穷尽每一种可能的情况,从而达到求解的目的。穷举算法效率不高,但适用于一些没有明显规律可循的场合。 简单的问题可以用通用的搜索算法,比如线性搜索算法用于对线性解空间的搜索,广度优先和深度优先的递归搜索算法适用于树型解空间或更复杂的图型解空间。 特定的评价方法都附着在特定的搜索算法中,比如博弈树算法中常用的极大极小值算法和“α-β”算法,都伴随着相应的剪枝算法。 剪枝和启发 剪枝不是启发性搜索。 鸡有 %d只,兔子有%d只", chicken, rabbit)); } } } } 输出 鸡有 23只,兔子有12只 其实上面这段代码和之前的文章——笔试题 是完全类似的,所以百钱买百鸡的算法其实就是穷举算法

    97720发布于 2020-09-14
  • 来自专栏算法channel

    通过简单的 “刷题” 就能搞定算法笔试题吗?

    接下来,以靠近这些大神为目标,和大家一直专注于面试算法题的分析思路、算法思想,以及如何快速在脑海里形成算法伪代码。至于之后的求解代码我放在次要位置,甚至忽略,因为有了算法思路,这些可能就不是重点。 要回答这个问题,可以参考算法导论上给出的两个前提。 比如Leetcode的有道题就是这样做的:起始位置可以在第1层或第2层,所以: 1f(1) = 0 //爬到第2层的成本变为0 其他与上面分析完全一致 算法的灵活性就和算法题的灵活性一样,改变一个细微的条件后 ,就需要考虑对整个算法的影响,有时甚至一个微小的变化,就会导致整个算法重新设计。 所以,算法工程师面临的压力是很大的,需求的一点变化,动辄就要修改整个算法。另一个角度来说,编写算法框架的难度就不言而喻。 要知道学会分析算法题不是一朝一夕的。那么是不是可以跨过这一步呢?

    1.1K20发布于 2018-12-25
领券