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

    JavaScript算法笔试

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

    29020编辑于 2022-11-10
  • 来自专栏C++学习历程

    【C++笔试强训】如何成为算法糕手Day8

    要找到两个正整数A和B的最小公倍数,我们可以采用一个公式,即两数之积除以它们的最大公约数。为了求得这个最大公约数,有多种方法可供选择,其中最为人所熟知的是穷举法和辗转相除法。在这里,我们主要关注并应用这两种方法:穷举法和辗转相除法,来求解A和B的最大公约数,进而求得它们的最小公倍数。

    22310编辑于 2024-10-17
  • 来自专栏全栈程序员必看

    阿里算法内推笔试

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

    26820编辑于 2022-09-30
  • 来自专栏全栈工程师修炼之路

    常规笔试算法总结.md

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

    34720编辑于 2022-09-28
  • 来自专栏全栈工程师修炼之路

    常规笔试算法总结.md

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

    46910发布于 2020-10-23
  • 来自专栏zjblog

    面试:算法相关笔试

    笔试题,面试问到的内容和一些项目的东西记下来,方便以后回顾。 就相当于总结吧,然后可以在面试的时候手机放桌上开录音,录下来,回去复盘也好整理~ 今天做的两笔试题,题目不算难,做了快两小时,走了很多弯路,还好是能用myeclipse,要是手写肯定gg,调错都不好调。 毕竟算法这块还需要学习~ 题目一: 小明的女朋友最喜欢在网上买买买了,可是钱包里钞票有限,不能想买啥就买啥。面对琳琅满目的物品,她想买尽可能多的种类,每种只买一件,同时总价格还不能超过预算上限。 以3月8日为例,首先移动分组,3月需要循环左移2次,变成: STUVWXYZ*,ABCDEFGHI,JKLMNOPQR 然后每组内的字符,8日的话需要循环左移7次,最终的编码为: Z*STUVWXY,HIABCDEFG 如果在3月8日传递信息“HAPPY”,那么H位于第2组的第1个,A位于第2组第3个,P位于第3组第9个,Y位于第1组第9个,所以纸条上会写成: 21 23 39 39 19 现在给定日期和需要传递的信息

    45010编辑于 2022-06-21
  • 来自专栏学习

    【C++】 —— 笔试刷题day_8

    算法思路 对于求两个数的最小公倍数问题,想必已经非常熟悉了; 在之前学校上课时,记得老师提起过,最小公倍数 = 两个数的乘积 除以最大公约数。 算法思路 对于这道题,暴力解法,枚举出来所以的子序列,找出最长的连续序列,求出来长度即可。 这里不多描述了,回超时。 算法思路 初次遇见这道题,博主以为是搜索题,就直接使用bfs深度遍历完整个数组,找到当前位置向左和向右走能够获得的分数,然后取其中最大值。

    17600编辑于 2025-03-26
  • 来自专栏码洞

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

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

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

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

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

    84110发布于 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

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

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

    算法认准 labuladong 东哥带你手把手撕力扣 我知道各位是被标题吸引进来的,那就不废话,先说几个算法笔试的硬核套路,再说说语言选择和做题复习的策略。 不重新蒙,正确的概率是 1/4,重新蒙,正确的概率是 3/8,白捡的概率都不要么? 是不是觉得不可思议?是不是觉得我在胡扯? 换了之后正确概率是 (1 - 1/4) / 2 = 3/8 啊! 其实这就是典型的「三门问题」,不知道的话看旧文 几个反直觉的概率问题。 编程语言的选择 仅从做算法题的角度来说,我个人比较建议使用 Java 作为笔试的编程语言。 本文我简单介绍了几个笔试算法的技巧,各位好好品味~ 最后,请秋招的同学多向身边的朋友推荐 labuladong 公众号。算法真的没那么难,这一切只是手段而已,过算法笔试拿 offer 才是目的。

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

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

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

    1.8K11编辑于 2024-12-29
  • 来自专栏ReganYue's Blog

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

    题目B:大量字符排序 输入大量英文字符,请Java编程实现尽可能快的排序算法。时间复杂度低者为优。 0,0,0,0,1,0,3,0, 1,0,1,0,0,0,0,0, }; int time=CoronaVirus.detect(map,8,8

    48520发布于 2021-09-16
  • 来自专栏五分钟学算法

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

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

    66620编辑于 2023-09-20
  • 来自专栏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,非常好的教学,很详细地列举了

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

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

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

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

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

    给出的一些常见的数据结构与算法笔试面试题,特整理如下,后期遇到新的再更新。 笔试面试题 常见时空复杂度有 常数级复杂度:O(1) 对数级复杂度:O(logN) 线性级复杂度:O(N) 线性对数级复杂度:O(NlogN) 平方级复杂度:O(N2) 冒泡排序算法(重点) (1)算法流程 //bubble(arr,9); //insert(arr,9); //choose(arr,9); quick(arr,0,8); printf("排序后的结果是:"); int i = 22 11 44 55 66 insert_data(&list,2,88); travel(&list);//77 33 88 22 11 44 55 66 insert_data(&list,8,99 list));// 33 printf("尾节点的元素值是:%d\n",get_tail(&list));// 99 printf("链表中节点元素的个数是:%d\n",size(&list));// 8

    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

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

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

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

    1.5K30发布于 2019-03-01
领券