
算法
matthew_leung
想飞的贪吃java菜鸟
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
剑指 Offer 04. 二维数组中的查找 LeetCode Java
剑指 Offer 04. 二维数组中的查找难度中等682收藏分享切换为英文接收动态反馈在一个 n * m 的二维数组中,每一行都按照从左到右递增的顺序排序,每一列都按照从上到下递增的顺序排序。请完成一个高效的函数,输入这样的一个二维数组和一个整数,判断数组中是否含有该整数。示例:现有矩阵 matrix 如下:[ [1, 4, 7, 11, 15], [2, 5, 8, 12, 19], [3, 6, 9, 16, 22], [10, 13, 14,原创 2022-05-30 14:03:29 · 1253 阅读 · 0 评论 -
3. 无重复字符的最长子串 LeetCode java
题目:给定一个字符串 s ,请你找出其中不含有重复字符的最长子串的长度。示例1:输入: s = "abcabcbb" 输出: 3 解释: 因为无重复字符的最长子串是 "abc",所以其长度为 3。 示例 2:输入: s = "bbbbb" 输出: 1 解释: 因为无重复字符的最长子串是 "b",所以其长度为 1。 示例 3:输入: s = "pwwkew" 输出: 3 解释: 因为无重复字符的最长子串是"wke",所以其长度为 3。 请注意,你的答案必须是 子串 的长度,"p...原创 2022-05-24 20:22:45 · 174 阅读 · 0 评论 -
1. 两数之和 leetcode java
1. 两数之和难度简单10944收藏分享切换为英文接收动态反馈给定一个整数数组nums和一个整数目标值target,请你在该数组中找出和为目标值的那两个整数,并返回它们的数组下标。你可以假设每种输入只会对应一个答案。但是,数组中同一个元素在答案里不能重复出现。你可以按任意顺序返回答案。示例 1:输入:nums = [2,7,11,15], target = 9输出:[0,1]解释:因为 nums[0] + nums[1] == 9 ,返回 [0, 1] 。...原创 2021-04-28 20:50:06 · 199 阅读 · 0 评论 -
[编程题]从尾到头打印链表 牛客网练习 java递归
链接:https://www.nowcoder.com/questionTerminal/d0267f7f55b3412ba93bd35cfa8e8035?answerType=1&f=discussion来源:牛客网[编程题]从尾到头打印链表热度指数:1468661 时间限制:C/C++ 1秒,其他语言2秒 空间限制:C/C++ 32M,其他语言64M 算法知识视频讲解 输入一个链表,按链表从尾到头的顺序返回一个ArrayList。示例1输入{67,0,24,58}.原创 2020-11-24 00:34:02 · 401 阅读 · 0 评论 -
[编程题]替换空格 牛客网练习
链接:https://www.nowcoder.com/questionTerminal/4060ac7e3e404ad1a894ef3e17650423?toCommentId=8146213来源:牛客网[编程题]替换空格热度指数:1635595 时间限制:C/C++ 1秒,其他语言2秒 空间限制:C/C++ 32M,其他语言64M 算法知识视频讲解 请实现一个函数,将一个字符串中的每个空格替换成“%20”。例如,当字符串为We Are Happy.则经过替换之后的字符串为We%20Ar.原创 2020-11-17 13:34:56 · 239 阅读 · 0 评论 -
[编程题]二维数组中的查找 牛客网练习
链接:https://www.nowcoder.com/questionTerminal/abc3fe2ce8e146608e868a70efebf62e?toCommentId=8130433来源:牛客网[编程题]二维数组中的查找热度指数:1963984 时间限制:C/C++ 1秒,其他语言2秒 空间限制:C/C++ 32M,其他语言64M 算法知识视频讲解 在一个二维数组中(每个一维数组的长度相同),每一行都按照从左到右递增的顺序排序,每一列都按照从上到下递增的顺序排序。请完成一个函数.原创 2020-11-14 15:26:41 · 287 阅读 · 0 评论 -
LeetCode练习 133. 克隆图
给你无向连通图中一个节点的引用,请你返回该图的深拷贝(克隆)。图中的每个节点都包含它的值 val(int) 和其邻居的列表(list[Node])。class Node { public int val; public List<Node> neighbors;}测试用例格式:简单起见,每个节点的值都和它的索引相同。例如,第一个节点值为 1(val = 1),第二个节点值为 2(val = 2),以此类推。该图在测试用例中使用邻接列表表示。邻接列表...原创 2020-08-25 00:50:35 · 228 阅读 · 0 评论 -
leetcode练习 2. 两数相加
2. 两数相加难度中等4789收藏分享切换为英文关注反馈给出两个非空的链表用来表示两个非负的整数。其中,它们各自的位数是按照逆序的方式存储的,并且它们的每个节点只能存储一位数字。如果,我们将这两个数相加起来,则会返回一个新的链表来表示它们的和。您可以假设除了数字 0 之外,这两个数都不会以 0开头。示例:输入:(2 -> 4 -> 3) + (5 -> 6 -> 4)输出:7 -> 0 -> 8原因:342 + 465 = 80...原创 2020-08-25 00:45:34 · 345 阅读 · 0 评论 -
牛客网算法练习--[编程题]表达式求值 java实现
链接:https://www.nowcoder.com/questionTerminal/3e483fe3c0bb447bb17ffb3eeeca78ba?toCommentId=6185324来源:牛客网[编程题]表达式求值热度指数:23176 时间限制:C/C++ 1秒,其他语言2秒 空间限制:C/C++ 256M,其他语言512M 算法知识视频讲解 今天上课,老师教了小易怎么计算加法和乘法,乘法的优先级大于加法,但是如果一个运算加了括号,那么它的优先级是最高的。例如: 1.原创 2020-05-21 20:32:54 · 620 阅读 · 0 评论 -
牛客网算法练习--[编程题]俄罗斯方块 java实现
[编程题]俄罗斯方块热度指数:26960 时间限制:C/C++ 1秒,其他语言2秒 空间限制:C/C++ 256M,其他语言512M 算法知识视频讲解 小易有一个古老的游戏机,上面有着经典的游戏俄罗斯方块。因为它比较古老,所以规则和一般的俄罗斯方块不同。荧幕上一共有 n 列,每次都会有一个 1 x 1 的方块随机落下,在同一列中,后落下的方块会叠在先前的方块之上,当一整行方块都被占满时,这一行会被消去,并得到1分。有一天,小易又开了一局游戏,当玩到第 m 个方块落下时他觉得太无聊就关掉了,小易希原创 2020-05-20 23:58:20 · 939 阅读 · 0 评论 -
牛客网算法练习--[编程题]牛牛的闹钟 java实现
题目描述牛牛总是睡过头,所以他定了很多闹钟,只有在闹钟响的时候他才会醒过来并且决定起不起床。从他起床算起他需要X分钟到达教室,上课时间为当天的A时B分,请问他最晚可以什么时间起床输入描述:每个输入包含一个测试用例。每个测试用例的第一行包含一个正整数,表示闹钟的数量N(N<=100)。接下来的N行每行包含两个整数,表示这个闹钟响起的时间为Hi(0<=A<24)时Mi(0<=B<60)分。接下来的一行包含一个整数,表示从起床算起他需要X(0<=X<=原创 2020-05-19 20:16:29 · 531 阅读 · 0 评论 -
牛客网算法练习--[编程题]迷路的牛牛 java实现
今天开始练习一下算法和mysql等题目,增加一下自己的算法能力。链接:https://www.nowcoder.com/questionTerminal/fc72d3493d7e4be883e931d507352a4a?toCommentId=6159662来源:牛客网[编程题]迷路的牛牛热度指数:43429 时间限制:C/C++ 1秒,其他语言2秒 空间限制:C/C++ 32M,其他语言64M 算法知识视频讲解 牛牛去犇犇老师家补课,出门的时候面向北方,但是现在他迷路了。虽然他手里有.原创 2020-05-18 00:30:39 · 452 阅读 · 0 评论 -
7-4 统计工龄(20 分)
7-4 统计工龄(20 分)给定公司N名员工的工龄,要求按工龄增序输出每个工龄段有多少员工。输入格式:输入首先给出正整数N(≤105),即员工总人数;随后给出N个整数,即每个员工的工龄,范围在[0, 50]。输出格式:按工龄的递增顺序输出每个工龄的员工个数,格式为:“工龄:人数”。每项占一行。如果人数为0则不输出该项。输入样例:810 2 0 5 7 2 5 2输出样例:0:12:3...原创 2018-05-22 14:15:24 · 1414 阅读 · 0 评论 -
7-13 日K蜡烛图 (15 分) 基础编程题目集(C语言)
7-13 日K蜡烛图 (15 分)股票价格涨跌趋势,常用蜡烛图技术中的K线图来表示,分为按日的日K线、按周的周K线、按月的月K线等。以日K线为例,每天股票价格从开盘到收盘走完一天,对应一根蜡烛小图,要表示四个价格:开盘价格Open(早上刚刚开始开盘买卖成交的第1笔价格)、收盘价格Close(下午收盘时最后一笔成交的价格)、中间的最高价High和最低价Low。如果Close<Open,...原创 2019-08-03 13:48:02 · 1219 阅读 · 0 评论 -
7-14 求整数段和 (15 分) 基础编程题目集 (C语言)
7-14 求整数段和 (15 分)给定两个整数A和B,输出从A到B的所有整数以及这些数的和。输入格式:输入在一行中给出2个整数A和B,其中−100≤A≤B≤100,其间以空格分隔。输出格式:首先顺序输出从A到B的所有整数,每5个数字占一行,每个数字占5个字符宽度,向右对齐。最后在一行中按Sum = X的格式输出全部数字的和X。输入样例:-3 8输出样例: ...原创 2019-08-03 14:29:20 · 807 阅读 · 1 评论 -
7-8 超速判断 (10 分) 基础编程题目集(C语言)
基础编程题目集返回7-8 超速判断 (10 分)模拟交通警察的雷达测速仪。输入汽车速度,如果速度超出60 mph,则显示“Speeding”,否则显示“OK”。输入格式:输入在一行中给出1个不超过500的非负整数,即雷达测到的车速。输出格式:在一行中输出测速仪显示结果,格式为:Speed: V - S,其中V是车速,S或者是Speeding、或者是OK。输入样...原创 2019-08-01 21:22:44 · 1199 阅读 · 1 评论 -
7-9 用天平找小球 (10 分) 基础编程题目集(C语言)
基础编程题目集返回7-9 用天平找小球 (10 分)三个球A、B、C,大小形状相同且其中有一个球与其他球重量不同。要求找出这个不一样的球。输入格式:输入在一行中给出3个正整数,顺序对应球A、B、C的重量。输出格式:在一行中输出唯一的那个不一样的球。输入样例:1 1 2输出样例:C////Created by Administrato...原创 2019-08-01 22:04:57 · 620 阅读 · 0 评论 -
7-10 计算工资 (15 分) 基础编程题目集(C语言)
基础编程题目集返回7-10 计算工资 (15 分)某公司员工的工资计算方法如下:一周内工作时间不超过40小时,按正常工作时间计酬;超出40小时的工作时间部分,按正常工作时间报酬的1.5倍计酬。员工按进公司时间分为新职工和老职工,进公司不少于5年的员工为老职工,5年以下的为新职工。新职工的正常工资为30元/小时,老职工的正常工资为50元/小时。请按该计酬方式计算员工的工资。输入...原创 2019-08-02 00:04:56 · 3939 阅读 · 0 评论 -
7-11 分段计算居民水费 (10 分) 基础编程题目集(C语言)
基础编程题目集返回7-11 分段计算居民水费 (10 分)为鼓励居民节约用水,自来水公司采取按用水量阶梯式计价的办法,居民应交水费y(元)与月用水量x(吨)相关:当x不超过15吨时,y=4x/3;超过后,y=2.5x−17.5。请编写程序实现水费的计算。输入格式:输入在一行中给出非负实数x。输出格式:在一行输出应交的水费,精确到小数点后2位。输入样例1:...原创 2019-08-02 00:23:15 · 7203 阅读 · 0 评论 -
7-12 两个数的简单计算器 (10 分) 基础编程题目集(C语言)
基础编程题目集返回7-12 两个数的简单计算器 (10 分)本题要求编写一个简单计算器程序,可根据输入的运算符,对2个整数进行加、减、乘、除或求余运算。题目保证输入和输出均不超过整型范围。输入格式:输入在一行中依次输入操作数1、运算符、操作数2,其间以1个空格分隔。操作数的数据类型为整型,且保证除法和求余的分母非零。输出格式:当运算符为+、-、*、/、%时,在一行...原创 2019-08-02 09:51:29 · 2184 阅读 · 0 评论 -
7-15 计算圆周率 (15 分) 基础编程题目集(C语言)
基础编程题目集返回7-15 计算圆周率 (15 分)根据下面关系式,求圆周率的值,直到最后一项的值小于给定阈值。2π=1+31+3×52!+3×5×73!+⋯+3×5×7×⋯×(2n+1)n!+⋯输入格式:输入在一行中给出小于1的阈值。输出格式:在一行中输出满足阈值条件的近似圆周率,输出到小数点后6位。输入...原创 2019-08-13 14:13:10 · 2883 阅读 · 1 评论 -
7-7 12-24小时制 (15 分) 基础编程题目集(C语言)
基础编程题目集7-7 12-24小时制 (15 分)编写一个程序,要求用户输入24小时制的时间,然后显示12小时制的时间。输入格式:输入在一行中给出带有中间的:符号(半角的冒号)的24小时制的时间,如12:34表示12点34分。当小时或分钟数小于10时,均没有前导的零,如5:6表示5点零6分。提示:在scanf的格式字符串中加入:,让scanf来处理这个冒号。输出格式:...原创 2019-07-12 13:55:16 · 734 阅读 · 0 评论 -
7-6 混合类型数据格式化输入 (5 分) 基础编程题目集 C语言
基础编程题目集返回7-6 混合类型数据格式化输入 (5 分)本题要求编写程序,顺序读入浮点数1、整数、字符、浮点数2,再按照字符、整数、浮点数1、浮点数2的顺序输出。输入格式:输入在一行中顺序给出浮点数1、整数、字符、浮点数2,其间以1个空格分隔。输出格式:在一行中按照字符、整数、浮点数1、浮点数2的顺序输出,其中浮点数保留小数点后2位。输入样例:2.1...原创 2019-07-11 00:42:56 · 867 阅读 · 0 评论 -
7-6 点赞狂魔(25 分)
7-6 点赞狂魔(25 分)微博上有个“点赞”功能,你可以为你喜欢的博文点个赞表示支持。每篇博文都有一些刻画其特性的标签,而你点赞的博文的类型,也间接刻画了你的特性。然而有这么一种人,他们会通过给自己看到的一切内容点赞来狂刷存在感,这种人就被称为“点赞狂魔”。他们点赞的标签非常分散,无法体现出明显的特性。本题就要求你写个程序,通过统计每个人点赞的不同标签的数量,找出前3名点赞狂魔。输入格式:输入在...原创 2018-06-10 10:27:05 · 4998 阅读 · 1 评论 -
7-2 六度空间(30 分)
7-2 六度空间(30 分)“六度空间”理论又称作“六度分隔(Six Degrees of Separation)”理论。这个理论可以通俗地阐述为:“你和任何一个陌生人之间所间隔的人不会超过六个,也就是说,最多通过五个人你就能够认识任何一个陌生人。”如图1所示。图1 六度空间示意图“六度空间”理论虽然得到广泛的认同,并且正在得到越来越多的应用。但是数十年来,试图验证这个理论始终是许多社会学家努力追...原创 2018-06-01 10:02:08 · 4963 阅读 · 1 评论 -
7-2 抢红包(25 分)
7-2 抢红包(25 分)没有人没抢过红包吧…… 这里给出N个人之间互相发红包、抢红包的记录,请你统计一下他们抢红包的收获。输入格式:输入第一行给出一个正整数N(≤104),即参与发红包和抢红包的总人数,则这些人从1到N编号。随后N行,第i行给出编号为i的人发红包的记录,格式如下:KN1P1⋯NKPK其中K(0≤K≤20)是发出去的红包个数,Ni是抢到红包的人的...原创 2018-06-05 22:25:27 · 1813 阅读 · 0 评论 -
7-1 功夫传人(25 分)
7-1 功夫传人(25 分)一门武功能否传承久远并被发扬光大,是要看缘分的。一般来说,师傅传授给徒弟的武功总要打个折扣,于是越往后传,弟子们的功夫就越弱…… 直到某一支的某一代突然出现一个天分特别高的弟子(或者是吃到了灵丹、挖到了特别的秘笈),会将功夫的威力一下子放大N倍 —— 我们称这种弟子为“得道者”。这里我们来考察某一位祖师爷门下的徒子徒孙家谱:假设家谱中的每个人只有1位师傅(除了祖师爷没有...原创 2018-06-04 10:34:20 · 1083 阅读 · 0 评论 -
7-5 冒泡法排序(20 分)
7-5 冒泡法排序(20 分)将N个整数按从小到大排序的冒泡排序法是这样工作的:从头到尾比较相邻两个元素,如果前面的元素大于其紧随的后面元素,则交换它们。通过一遍扫描,则最后一个元素必定是最大的元素。然后用同样的方法对前N−1个元素进行第二遍扫描。依此类推,最后只需处理两个元素,就完成了对N个数的排序。本题要求对任意给定的K(<N),输出扫描完第K遍后的中间结果数列。输入格式:输入在第1行中...原创 2018-05-22 01:00:17 · 10404 阅读 · 0 评论 -
7-3 树的遍历(25 分)
7-3 树的遍历(25 分)给定一棵二叉树的后序遍历和中序遍历,请你输出其层序遍历的序列。这里假设键值都是互不相等的正整数。输入格式:输入第一行给出一个正整数N(≤30),是二叉树中结点的个数。第二行给出其后序遍历序列。第三行给出其中序遍历序列。数字间以空格分隔。输出格式:在一行中输出该树的层序遍历的序列。数字间以1个空格分隔,行首尾不得有多余空格。输入样例:72 3 1 5 7 6 41 2...原创 2018-04-05 19:06:46 · 3469 阅读 · 0 评论 -
二叉搜索树简单操作集
#include<stdio.h>#include<malloc.h>typedef int Element;typedef struct trees *Pointer;typedef struct trees { Element data; Pointer Left; Pointer Right;}Tree;typedef Tree *BinTree;...原创 2018-04-11 16:08:58 · 197 阅读 · 0 评论 -
6-1 求二叉树高度(20 分)
6-1 求二叉树高度(20 分)本题要求给定二叉树的高度。函数接口定义:int GetHeight( BinTree BT );其中BinTree结构定义如下:typedef struct TNode *Position;typedef Position BinTree;struct TNode{ ElementType Data; BinTree Left; Bin...原创 2018-04-03 09:39:34 · 13707 阅读 · 4 评论 -
计算两个集合的交集、并集、差集、对称集
计算 两个集合的交集、并集、差集、对称集import sysimport time#刷新缓冲区def flush(): time.sleep(1)#除去重复元素def duplicate_removal(lt): lt1 = [] for i in lt: if i not in lt1: lt1.append(...原创 2018-10-30 22:27:52 · 3276 阅读 · 0 评论 -
JS能力测评经典题--查找数组元素位置
时间限制:3秒 空间限制:32768K 热度指数:84259算法知识视频讲解 题目描述找出元素 item 在给定数组 arr 中的位置输出描述:如果数组中存在 item,则返回元素在数组中的位置,否则返回 -1示例1输入复制[ 1, 2, 3, 4 ], 3输出复制2function indexOf(arr, item) { if (...原创 2018-11-07 23:28:29 · 227 阅读 · 0 评论 -
JS能力测评经典题--移除数组中的元素
时间限制:3秒 空间限制:32768K 热度指数:72378算法知识视频讲解 题目描述移除数组 arr 中的所有值与 item 相等的元素。不要直接修改数组 arr,结果返回新的数组示例1输入复制[1, 2, 3, 4, 2], 2输出复制[1, 3, 4]function remove(arr, item) { var newarr = []...原创 2018-11-13 08:52:58 · 262 阅读 · 0 评论 -
7-5 表格输出 (5 分)--基础编程题目集 C语言
基础编程题目集返回7-5 表格输出 (5 分)本题要求编写程序,按照规定格式输出表格。输入格式:本题目没有输入。输出格式:要求严格按照给出的格式输出下列表格:------------------------------------Province Area(km2) Pop.(10K)----------------------------...原创 2019-07-11 00:28:44 · 4945 阅读 · 5 评论 -
基础编程题目集 7-4 BCD解密 (10 分) c语言实现
7-4 BCD解密 (10 分)BCD数是用一个字节来表达两位十进制的数,每四个比特表示一位。所以如果一个BCD数的十六进制是0x12,它表达的就是十进制的12。但是小明没学过BCD,把所有的BCD数都当作二进制数转换成十进制输出了。于是BCD的0x12被输出成了十进制的18了!现在,你的程序要读入这个错误的十进制数,然后输出正确的十进制数。提示:你可以把18转换回0x12,然后再转换回1...原创 2019-07-08 10:18:53 · 1597 阅读 · 2 评论 -
7-2 然后是几点 (15 分)
7-2 然后是几点 (15 分)有时候人们用四位数字表示一个时间,比如1106表示11点零6分。现在,你的程序要根据起始时间和流逝的时间计算出终止时间。读入两个数字,第一个数字以这样的四位数字表示当前时间,第二个数字表示分钟数,计算当前时间经过那么多分钟后是几点,结果也表示为四位数字。当小时为个位数时,没有前导的零,即5点30分表示为530。注意,第二个数字表示的分钟数可能超过60,也可能...原创 2019-06-23 16:19:49 · 367 阅读 · 0 评论 -
基础编程题目集 7-1 厘米换算英尺英寸 (15 分)--kotlin实现
如果已知英制长度的英尺foot和英寸inch的值,那么对应的米是(foot+inch/12)×0.3048。现在,如果用户输入的是厘米数,那么对应英制长度的英尺和英寸是多少呢?别忘了1英尺等于12英寸。输入格式:输入在一行中给出1个正整数,单位是厘米。输出格式:在一行中输出这个厘米数对应英制长度的英尺和英寸的整数值,中间用空格分开。输入样例:170输出样例:5...原创 2019-06-22 15:57:24 · 298 阅读 · 0 评论 -
练习2-9 整数四则运算 (10 分)
今天开始,为说的话负责。有空就练一下这些基础。而且是多种语言的实现为主.。练习2-9 整数四则运算 (10 分)本题要求编写程序,计算2个正整数的和、差、积、商并输出。题目保证输入和输出全部在整型范围内。输入格式:输入在一行中给出2个正整数A和B。输出格式:在4行中按照格式“A 运算符 B = 结果”顺序输出和、差、积、商。输入样例:3 2输出样例:3...原创 2019-03-11 01:14:49 · 2291 阅读 · 2 评论 -
6-4 字符串的连接 (15 分)
6-4 字符串的连接 (15 分)本题要求实现一个函数,将两个字符串连接起来。函数接口定义:char *str_cat( char *s, char *t );函数str_cat应将字符串t复制到字符串s的末端,并且返回字符串s的首地址。裁判测试程序样例:#include <stdio.h>#include <string.h>#defi...原创 2018-11-08 21:47:42 · 46101 阅读 · 8 评论