刷题
文章平均质量分 50
OAOII
(づ ●─● )づ
展开
-
【java刷题】力扣 程序员面试金典(第 6 版)
程序员面试金典(第 6 版)原创 2022-02-22 15:07:05 · 759 阅读 · 0 评论 -
SQL刷题笔记
SQL刷题笔记day12021/11/30175.组合两个表表1: Person+-------------+---------+| 列名 | 类型 |+-------------+---------+| PersonId | int || FirstName | varchar || LastName | varchar |+-------------+---------+PersonId 是上表主键表2: Address+--原创 2021-11-30 14:18:52 · 11826 阅读 · 0 评论 -
java刷题笔记
Java刷题笔记day1-二分查找2021/11/3034.在排序数组中查找元素的第一个和最后一个位置给定一个按照升序排列的整数数组 nums,和一个目标值 target。找出给定目标值在数组中的开始位置和结束位置。如果数组中不存在目标值 target,返回 [-1, -1]。进阶:你可以设计并实现时间复杂度为 O(log n) 的算法解决此问题吗?示例 1:输入:nums = [5,7,7,8,8,10], target = 8输出:[3,4]示例 2:输入:nums = [5,原创 2021-11-30 14:05:48 · 952 阅读 · 0 评论 -
7-2 堆中的路径 (25分)
7-2 堆中的路径 (25分)将一系列给定数字插入一个初始为空的小顶堆H[]。随后对任意给定的下标i,打印从H[i]到根结点的路径。输入格式:每组测试第1行包含2个正整数N和M(≤1000),分别是插入元素的个数、以及需要打印的路径条数。下一行给出区间[-10000, 10000]内的N个要被插入一个初始为空的小顶堆的整数。最后一行给出M个下标。输出格式:对输入中给出的每个下标i,在一行中输出从H[i]到根结点的路径上的数据。数字间以1个空格分隔,行末不得有多余空格。输入样例:5 346原创 2020-12-18 12:39:15 · 1427 阅读 · 0 评论 -
7-1 0-1背包 (20分)
7-1 0-1背包 (20分)给定n(n<=100)种物品和一个背包。物品i的重量是wi,价值为vi,背包的容量为C(C<=1000)。问:应如何选择装入背包中的物品,使得装入背包中物品的总价值最大? 在选择装入背包的物品时,对每种物品i只有两个选择:装入或不装入。不能将物品i装入多次,也不能只装入部分物品i。输入格式:共有n+1行输入: 第一行为n值和c值,表示n件物品和背包容量c; 接下来的n行,每行有两个数据,分别表示第i(1≤i≤n)件物品的重量和价值。输出格式:输出装入背包中原创 2020-12-18 12:38:08 · 2918 阅读 · 0 评论 -
7-1 凑零钱 (30分)
7-1 凑零钱 (30分)输入样例 1:8 95 9 8 7 2 3 4 1输出样例 1:1 3 5输入样例 2:4 87 2 4 3输出样例 2:No Solution样例解答:动态规划,先对硬币价值升序排序,从左向右依次选取硬币,对于每个硬币都有两种情况,取或不取,当所取硬币总额等于所需总额时,输出(因为已经升序排序,所得的第一组数据就是最小序列),以此进行递归。测试点6运行超时:当所有硬币总额小于所需硬币总额时,直接输出"No Solution"即可。#原创 2020-12-09 20:50:46 · 786 阅读 · 1 评论 -
7-1 0-1背包 (50分)
7-1 0-1背包 (50分)给定n(n<=100)种物品和一个背包。物品i的重量是wi,价值为vi,背包的容量为C(C<=1000)。问:应如何选择装入背包中的物品,使得装入背包中物品的总价值最大? 在选择装入背包的物品时,对每种物品i只有两个选择:装入或不装入。不能将物品i装入多次,也不能只装入部分物品i。输入格式:共有n+1行输入: 第一行为n值和c值,表示n件物品和背包容量c; 接下来的n行,每行有两个数据,分别表示第i(1≤i≤n)件物品的重量和价值。输出格式:输出装入背包中原创 2020-12-06 16:26:13 · 1472 阅读 · 0 评论 -
7-1 抢红包 (30分)
7-1 抢红包 (30分)输入样例:103 2 22 10 58 8 1255 1 345 3 211 5 233 7 13 8 1011 7 88002 1 1000 2 10002 4 250 10 3206 5 11 9 22 8 33 7 44 10 55 4 21 3 88002 1 23 2 1231 8 2504 2 121 4 516 7 112 9 10输出样例:1 11.632 3.638 3.633 2.117 1.696 -1.679原创 2020-12-06 15:38:52 · 836 阅读 · 0 评论 -
7-1 装箱问题 (50分)
7-1 装箱问题 (50分)假设有N项物品,大小分别为s1 、s2 、…、si 、…、sN,其中si为满足1≤si ≤100的整数。要把这些物品装入到容量为100的一批箱子(序号1-N)中。装箱方法是:对每项物品, 顺序扫描箱子,把该物品放入足以能够容下它的第一个箱子中。请写一个程序模拟这种装箱过程,并输出每个物品所在的箱子序号,以及放置全部物品所需的箱子数目。输入格式:输入第一行给出物品个数N(≤1000);第二行给出N个正整数si(1≤si≤100,表示第i项物品的大小)。输原创 2020-12-06 14:39:56 · 486 阅读 · 0 评论 -
L1-8 刮刮彩票 (20分)
L1-8 刮刮彩票 (20分)“刮刮彩票”是一款网络游戏里面的一个小游戏。如图所示:(图略)每次游戏玩家会拿到一张彩票,上面会有 9 个数字,分别为数字 1 到数字 9,数字各不重复,并以 3×3 的“九宫格”形式排布在彩票上。在游戏开始时能看见一个位置上的数字,其他位置上的数字均不可见。你可以选择三个位置的数字刮开,这样玩家就能看见四个位置上的数字了。最后玩家再从 3 横、3 竖、2 斜共 8 个方向中挑选一个方向,方向上三个数字的和可根据下列表格进行兑奖,获得对应数额的金币。数字合计原创 2020-11-29 18:24:32 · 1239 阅读 · 0 评论 -
L1-7 前世档案 (20分)
L1-7 前世档案 (20分)网络世界中时常会遇到这类滑稽的算命小程序,实现原理很简单,随便设计几个问题,根据玩家对每个问题的回答选择一条判断树中的路径(如下图所示),结论就是路径终点对应的那个结点。(图略)现在我们把结论从左到右顺序编号,编号从 1 开始。这里假设回答都是简单的“是”或“否”,又假设回答“是”对应向左的路径,回答“否”对应向右的路径。给定玩家的一系列回答,请你返回其得到的结论的编号。输入格式:输入第一行给出两个正整数:N(≤30)为玩家做一次测试要回答的问题数量;M(≤100)为原创 2020-11-29 18:19:45 · 2058 阅读 · 2 评论 -
L1-6 吃火锅 (15分)
L1-6 吃火锅 (15分)以上图片来自微信朋友圈:这种天气你有什么破事打电话给我基本没用。但是如果你说“吃火锅”,那就厉害了,我们的故事就开始了。本题要求你实现一个程序,自动检查你朋友给你发来的信息里有没有 chi1 huo3 guo1。输入格式:输入每行给出一句不超过 80 个字符的、以回车结尾的朋友信息,信息为非空字符串,仅包括字母、数字、空格、可见的半角标点符号。当读到某一行只有一个英文句点 . 时,输入结束,此行不算在朋友信息里。输出格式:首先在一行中输出朋友信息的总条数。然后对朋友的原创 2020-11-29 18:18:41 · 1554 阅读 · 1 评论 -
L1-5 胎压监测 (15分)
L1-5 胎压监测 (15分)小轿车中有一个系统随时监测四个车轮的胎压,如果四轮胎压不是很平衡,则可能对行车造成严重的影响。让我们把四个车轮 —— 左前轮、右前轮、右后轮、左后轮 —— 顺次编号为 1、2、3、4。本题就请你编写一个监测程序,随时监测四轮的胎压,并给出正确的报警信息。报警规则如下:如果所有轮胎的压力值与它们中的最大值误差在一个给定阈值内,并且都不低于系统设定的最低报警胎压,则说明情况正常,不报警;如果存在一个轮胎的压力值与它们中的最大值误差超过了阈值,或者低于系统设定的最低报警胎压,原创 2020-11-29 18:17:25 · 1422 阅读 · 0 评论 -
L1-4 调和平均 (10分)
L1-4 调和平均 (10分)N 个正数的算数平均是这些数的和除以 N,它们的调和平均是它们倒数的算数平均的倒数。本题就请你计算给定的一系列正数的调和平均值。输入格式:每个输入包含 1 个测试用例。每个测试用例第 1 行给出正整数 N (≤1000);第 2 行给出 N 个正数,都在区间 [0.1,100] 内。输出格式:在一行中输出给定数列的调和平均值,输出小数点后2位。输入样例:810 15 12.7 0.3 4 13 1 15.6输出样例:1.61样例解答:#include原创 2020-11-29 18:16:14 · 1394 阅读 · 0 评论 -
L1-3 洛希极限 (10分)
L1-3 洛希极限 (10分)科幻电影《流浪地球》中一个重要的情节是地球距离木星太近时,大气开始被木星吸走,而随着不断接近地木“刚体洛希极限”,地球面临被彻底撕碎的危险。但实际上,这个计算是错误的。洛希极限(Roche limit)是一个天体自身的引力与第二个天体造成的潮汐力相等时的距离。当两个天体的距离少于洛希极限,天体就会倾向碎散,继而成为第二个天体的环。它以首位计算这个极限的人爱德华·洛希命名。(摘自百度百科)大天体密度与小天体的密度的比值开 3 次方后,再乘以大天体的半径以及一个倍数(流体对应原创 2020-11-29 18:15:10 · 2110 阅读 · 0 评论 -
L1-2 猫是液体 (5分)
L1-2 猫是液体 (5分)测量一个人的体积是很难的,但猫就不一样了。因为猫是液体,所以可以很容易地通过测量一个长方体容器的容积来得到容器里猫的体积。本题就请你完成这个计算。输入格式:输入在第一行中给出 3 个不超过 100 的正整数,分别对应容器的长、宽、高。输出格式:在一行中输出猫的体积。输入样例:23 15 20输出样例:6900样例解答:#include<bits/stdc++.h>using namespace std;int main(){ int原创 2020-11-29 18:13:19 · 1343 阅读 · 1 评论 -
L1-1 嫑废话上代码 (5分)
L1-1 嫑废话上代码 (5分)Linux 之父 Linus Torvalds 的名言是:“Talk is cheap. Show me the code.”(嫑废话,上代码)。本题就请你直接在屏幕上输出这句话。输入格式:本题没有输入。输出格式:在一行中输出 Talk is cheap. Show me the code.。输入样例:无输出样例:Talk is cheap. Show me the code.样例解答:#include<bits/stdc++.h>us原创 2020-11-29 18:11:27 · 854 阅读 · 0 评论 -
7-1 月饼 (25分)(c++)
7-1 月饼 (25分)月饼是中国人在中秋佳节时吃的一种传统食品,不同地区有许多不同风味的月饼。现给定所有种类月饼的库存量、总售价、以及市场的最大需求量,请你计算可以获得的最大收益是多少。注意:销售时允许取出一部分库存。样例给出的情形是这样的:假如我们有 3 种月饼,其库存量分别为 18、15、10 万吨,总售价分别为 75、72、45 亿元。如果市场的最大需求量只有 20 万吨,那么我们最大收益策略应该是卖出全部 15 万吨第 2 种月饼、以及 5 万吨第 3 种月饼,获得 72 + 45/2 = 9原创 2020-11-26 22:47:08 · 521 阅读 · 0 评论 -
7-1 迷宫寻路 (20分)
7-1 迷宫寻路 (20分)给定一个M行N列的迷宫图,其中 "0"表示可通路,“1"表示障碍物,无法通行。在迷宫中只允许在水平或上下四个方向的通路上行走,走过的位置不能重复走。5行8列的迷宫如下: 0 1 1 1 0 0 0 00 0 0 1 0 0 0 00 1 0 0 0 1 0 00 1 1 1 0 1 1 01 0 0 0 0 0 0 0则从左上角(1,1)至右下角(5,8)的最短路径为:1,1–》2,1–》2,2–》2,3–》3,3–》3,4–》3,5–》4,5–》5,5–》5,原创 2020-11-02 21:28:15 · 2058 阅读 · 0 评论 -
7-1 列出叶结点 (40分)(c++)
7-1 列出叶结点 (40分)对于给定的二叉树,本题要求你按从上到下、从左到右的顺序输出其所有叶节点。输入格式:首先第一行给出一个正整数 N(≤10),为树中结点总数。树中的结点从 0 到 N−1 编号。随后 N 行,每行给出一个对应结点左右孩子的编号。如果某个孩子不存在,则在对应位置给出 “-”。编号间以 1 个空格分隔。输出格式:在一行中按规定顺序输出叶节点的编号。编号间以 1 个空格分隔,行首尾不得有多余空格。输入样例:81 -- -0 -2 7- -- -5 -4 6原创 2020-10-31 10:42:02 · 1180 阅读 · 1 评论 -
7-2 打印学生选课清单 (25分)(c++)
7-2 打印学生选课清单 (25分)假设全校有最多40000名学生和最多2500门课程。现给出每门课的选课学生名单,要求输出每个前来查询的学生的选课清单。输入格式:输入的第一行是两个正整数:N(≤40000),为前来查询课表的学生总数;K(≤2500),为总课程数。此后顺序给出课程1到K的选课学生名单。格式为:对每一门课,首先在一行中输出课程编号(简单起见,课程从1到K编号)和选课学生总数(之间用空格分隔),之后在第二行给出学生名单,相邻两个学生名字用1个空格分隔。学生姓名由3个大写英文字母+1位数字原创 2020-10-24 11:53:11 · 987 阅读 · 0 评论 -
7-1 最大子列和问题 (20分)(c++)
7-1 最大子列和问题 (20分)给定K个整数组成的序列{ N1, N2, …, NK },“连续子列”被定义为{ Ni, Ni+1, …, Nj },其中 1≤i≤j≤K。“最大子列和”则被定义为所有连续子列元素的和中最大者。例如给定序列{ -2, 11, -4, 13, -5, -2 },其连续子列{ 11, -4, 13 }有最大的和20。现要求你编写程序,计算给定整数序列的最大子列和。本题旨在测试各种不同的算法在各种数据情况下的表现。各组测试数据特点如下:数原创 2020-10-24 09:04:53 · 269 阅读 · 0 评论 -
7-2 两个有序链表序列的合并(c++)
7-2 两个有序链表序列的合并已知两个非降序链表序列S1与S2,设计函数构造出S1与S2合并后的新的非降序链表S3。输入格式:输入分两行,分别在每行给出由若干个正整数构成的非降序序列,用−1表示序列的结尾(−1不属于这个序列)。数字用空格间隔。输出格式:在一行中输出合并后新的非降序链表,数字间用空格分开,结尾不能有多余空格;若新链表为空,输出NULL。输入样例:1 3 5 -12 4 6 8 10 -1输出样例:1 2 3 4 5 6 8 10样例解答:#include <bi原创 2020-10-18 14:56:34 · 1801 阅读 · 0 评论 -
7-1 银行业务队列简单模拟(c++)
7-1 银行业务队列简单模拟设某银行有A、B两个业务窗口,且处理业务的速度不一样,其中A窗口处理速度是B窗口的2倍 —— 即当A窗口每处理完2个顾客时,B窗口处理完1个顾客。给定到达银行的顾客序列,请按业务完成的顺序输出顾客序列。假定不考虑顾客先后到达的时间间隔,并且当不同窗口同时处理完2个顾客时,A窗口顾客优先输出。输入格式:输入为一行正整数,其中第1个数字N(≤1000)为顾客总数,后面跟着N位顾客的编号。编号为奇数的顾客需要到A窗口办理业务,为偶数的顾客则去B窗口。数字间以空格分隔。输出格式:原创 2020-10-18 14:54:45 · 2450 阅读 · 0 评论 -
7-1 堆栈模拟队列 (25分)(c++)
7-1 堆栈模拟队列 (25分)设已知有两个堆栈S1和S2,请用这两个堆栈模拟出一个队列Q。所谓用堆栈模拟队列,实际上就是通过调用堆栈的下列操作函数:int IsFull(Stack S):判断堆栈S是否已满,返回1或0;int IsEmpty (Stack S ):判断堆栈S是否为空,返回1或0;void Push(Stack S, ElementType item ):将元素item压入堆栈S;ElementType Pop(Stack S ):删除并返回S的栈顶元素。实现队列的操作,即入原创 2020-10-17 12:14:34 · 689 阅读 · 0 评论 -
力扣 20. 有效的括号(java)
20. 有效的括号给定一个只包括 ‘(’,’)’,’{’,’}’,’[’,’]’ 的字符串,判断字符串是否有效。有效字符串需满足:左括号必须用相同类型的右括号闭合。左括号必须以正确的顺序闭合。注意空字符串可被认为是有效字符串。样例:示例 1:输入: “()”输出: true示例 2:输入: “()[]{}”输出: true示例 3:输入: “(]”输出: false示例 4:输入: “([)]”输出: false示例 5:输入: “{[]}”输出: true样例解原创 2020-10-10 16:02:44 · 268 阅读 · 0 评论 -
7-1 符号配对 (30分)(c++)
7-1 符号配对 (30分)请编写程序检查C语言源程序中下列符号是否配对:/*与*/、(与)、[与]、{与}。输入格式:输入为一个C语言源程序。当读到某一行中只有一个句点.和一个回车的时候,标志着输入结束。程序中需要检查配对的符号不超过100个。输出格式:首先,如果所有符号配对正确,则在第一行中输出YES,否则输出NO。然后在第二行中指出第一个不配对的符号:如果缺少左符号,则输出?-右符号;如果缺少右符号,则输出左符号-?。输入样例1:void test(){int i, A[10];原创 2020-10-10 16:40:20 · 2876 阅读 · 1 评论 -
L2-004 这是二叉搜索树吗? (建树+遍历)
L2-004 这是二叉搜索树吗? (25分)一棵二叉搜索树可被递归地定义为具有下列性质的二叉树:对于任一结点,·其左子树中所有结点的键值小于该结点的键值;·其右子树中所有结点的键值大于等于该结点的键值;·其左右子树都是二叉搜索树。·所谓二叉搜索树的“镜像”,即将所有结点的左右子树对换位置后所得到的树。给定一个整数键值序列,现请你编写程序,判断这是否是对一棵二叉搜索树或其镜像进行前序遍历的结果。输入格式:输入的第一行给出正整数 N(≤1000)。随后一行给出 N 个整数键值,其间以空格分隔。原创 2020-11-24 23:07:37 · 119 阅读 · 0 评论
分享