【算法(Algorithms)第4版 练习 1.3.20】教程文章相关的互联网学习教程文章

开更BUAA19级算法练习赛和上机赛~

作为一个算法的爱好者(说白了就是菜呗)听说只有19级没有人主动更新上机&练习赛于是为了防止19级算法题失传(x)为了让20&以后的学弟(x)学妹(√)有更多的资源本蒟蒻决定担负起这一重担(x) 不定时更新~

《算法(第四版)》练习1-1答案【代码】【图】

《算法(第四版)》练习答案,自己做的,记录一下~ 如有错误,烦请不吝赐教!1-1-1. a.7 b.200.0000002,没溢出,正常算就可以 c.true,因为&&的优先级高于|| 1-1-2. a.1.618,类型自动转换了,整型转换为浮点型 b.10.0,类型自动转换了,整型转换为浮点型 c.true,类型自动转换了,整型转换为浮点型,这里4.1>4.0也是true d.33,类型自动转换了,转换为字符串,但是1和2还是能计算的,如果要得到字符串123可以尝试1+""+2+“3”,或...

[算法练习及思路-leetcode剑指offer(Java解法)]No45.把数组排成最小的数【代码】

题号:剑指 Offer 45 题目名:把数组排成最小的数 原题URL:https://leetcode-cn.com/problems/ba-shu-zu-pai-cheng-zui-xiao-de-shu-lcof/ 题目描述 输入一个非负整数数组,把数组里所有数字拼接起来排成一个数,打印能拼接出的所有数字中最小的一个。 示例 示例 1: 输入: [10,2] 输出: "102" 示例 2: 输入: [3,30,34,5,9] 输出: "3033459" 限制 0 < nums.length <= 100输出结果可能非常大,所以你需要返回一个字符串而不是整数拼接...

基本算法练习——研究生考试【代码】

这个问题基本上没难度,送分题,是我做类似的算法题以来遇到的最简单的问题。 代码如下: #include <iostream> using namespace std;string inline judge(int a,int b,int c,int d){if(a<60||b<60||c<90||d<90) return "Fail";int sum = a+b+c+d;if(sum<310) return "Fail";if(sum>=350) return "Gongfei";else return "Zifei"; }int main(){int n;cin>>n;for(int i=0;i<n;i++){int a,b,c,d;cin>>a>>b>>c>>d;cout<<judge(a,b,c,d...

[算法练习及思路-leetcode每日一题(Java解法)]No49.字母异位词分组【代码】

题号:no49 题目名:字母异位词分组 原题URL:https://leetcode-cn.com/problems/group-anagrams-lcci/ 题目描述 编写一种方法,对字符串数组进行排序,将所有变位词组合在一起。变位词是指字母相同,但排列不同的字符串。 示例 示例 1: 输入: ["eat", "tea", "tan", "ate", "nat", "bat"], 输出: [["ate","eat","tea"],["nat","tan"],["bat"] ] 限制 所有输入均为小写字母。不考虑答案输出的顺序。 思路 1.遍历每个字符串 2.每个字符...

算法练习帖--24--Dota2 参议院(Java)【代码】

Dota2 参议院 一、题目描述 Dota2 的世界里有两个阵营:Radiant(天辉)和 Dire(夜魇) Dota2 参议院由来自两派的参议员组成。现在参议院希望对一个 Dota2 游戏里的改变作出决定。他们以一个基于轮为过程的投票进行。在每一轮中,每一位参议员都可以行使两项权利中的一项: 禁止一名参议员的权利: 参议员可以让另一位参议员在这一轮和随后的几轮中丧失所有的权利。 宣布胜利: 如果参议员发现有权利投票的参议员都是同一个阵营的,他...

[算法练习及思路-程序员面试金典(Java解法)]No204.计数质数【代码】

题号:no204 题目名:计数质数 原题URL:https://leetcode-cn.com/problems/string-rotation-lcci/ 题目描述 统计所有小于非负整数 n 的质数的数量。 示例 示例 1: 输入:n = 10 输出:4 解释:小于 10 的质数一共有 4 个, 它们是 2, 3, 5, 7 。示例 2: 输入:n = 0 输出:0限制 0 <= n <= 5 * 106 思路 1.从头到尾遍历,将所有的因子从0一直到根号n进行乘法运算 2.如果相乘,那么说明这个数肯定有因子,因数就是i和k 3.出去所有的非质...

算法竞赛入门经典第二版第一章习题-(练习Java和C++语法)【代码】

习题1-1 平均数(average) 输入三个整数,输出他们的平均值,保留三位小数 Java:package suanfa;import java.util.Scanner;public class T1_1 {public static void main(String[] args) {float a,b,c;float aver = 0;Scanner reader = new Scanner(System.in);a = reader.nextFloat();b = reader.nextFloat();c = reader.nextFloat();aver = (a+b+c)/3;String.format("%.3f", aver);System.out.println("The answer is " + aver);...

[算法练习及思路-程序员面试金典(Java解法)]No51.硬币(完全背包问题+优化空间)【代码】

题号:no51 题目名:硬币 原题URL:https://leetcode-cn.com/problems/coin-lcci/ 题目描述 硬币。给定数量不限的硬币,币值为25分、10分、5分和1分,编写代码计算n分有几种表示法。(结果可能会很大,你需要将结果模上1000000007) 示例 示例 1:输入: n = 5输出:2解释: 有两种方式可以凑成总金额: 5=5 5=1+1+1+1+1示例 2:输入: n = 10输出:4解释: 有四种方式可以凑成总金额: 10=10 10=5+5 10=5+1+1+1+1+1 10=1+1+1+1+1+1+1+1+1+1 限...

【数据结构与算法】leetcode刷题记录(用最少数量的箭引爆气球+完全二叉树的节点个数) --->贪心算法练习\\二叉树遍历【代码】【图】

文章目录 用最少数量的箭引爆气球Javapython 完全二叉树的节点个数javapython用最少数量的箭引爆气球 在二维空间中有许多球形的气球。对于每个气球,提供的输入是水平方向上,气球直径的开始和结束坐标。由于它是水平的,所以纵坐标并不重要,因此只要知道开始和结束的横坐标就足够了。开始坐标总是小于结束坐标。 一支弓箭可以沿着 x 轴从不同点完全垂直地射出。在坐标 x 处射出一支箭,若有一个气球的直径的开始和结束坐标为 xst...

2020年牛客算法入门课练习赛3 (A bfs B 容斥 C 线段树+主席树 D 暴力最短路 E 思维构造 )【代码】【图】

昨晚 div3 A 出了 最后一题,只有100左右人 A 的题有点兴奋 玩到2点,中午没睡着,傍晚吃了一颗维生素C(助睡眠)睡了20分钟,扛着迷迷糊糊的大脑来打这场。然后就没打好,四个题都会写,就是A题找bug浪费n久。导致赛时2题,赛后半小时又两题 A-胖胖的牛牛做法:经典bfs水题了。不会的去面壁,萌新除外#pragma GCC optimize(2) #include<bits/stdc++.h> #define ll long long #define maxn 1005 #define inf 1e9 #define pb push_ba...

算法练习【1】输出区间[M,N](10≤M≤N≤1000)之间所有各位数值之和为k的数,并统计输出满足条件的数的个数【代码】

题目 输出区间[M,N](10≤M≤N≤1000)之间所有各位数值之和为k的数,并统计输出满足条件的数的个数。 输入格式: 输入在第一行中给出正整数k,第二行中给出2个正整数M和N(10≤M≤N≤1000),中间用空格间隔。 输出格式: 在第一行中输出满足条件的所有数,每个数后面一个空格。 在第二行按count = 总数的格式输出满足条件的数的个数。 注意:若没有满足条件的数,则第一行为空行 输入样例1: 5 200 300 输出样例1: 203 212 221 230 cou...

2020年牛客算法入门课练习赛2 C-迁徙过程中的河流【代码】

题目链接 https://ac.nowcoder.com/acm/contest/5968/C 思路 典型的过桥问题.有N(N≥2)个人在晚上需要从X地到达Y地,中间要过一座桥,过桥需要手电筒(而他们只有1个手电筒),每次最多两个人一起过桥(否则桥会垮)。N个人的过桥时间依次存入数组t[N]中,分别为:t[0], t[1], ……, t[N-1]。过桥的速度以慢的人为准!注意:手电筒不能丢过桥!问题是:编程求这N个人过桥所花的最短时间。过桥问题的解法是贪心。我们先考虑三个人...

Leetcode练习(Python):树类:第113题: 路径总和 II:给定一个二叉树和一个目标和,找到所有从根节点到叶子节点路径总和等于给定目标和的路径。 说明: 叶子节点是指没有子节点的节点。

题目: 路径总和 II:给定一个二叉树和一个目标和,找到所有从根节点到叶子节点路径总和等于给定目标和的路径。 说明: 叶子节点是指没有子节点的节点。 示例:给定如下二叉树,以及目标和 sum = 22,5 / \ 4 8 / / \ 11 13 4 / \ / \ 7 2 5 1返回: [ [5,4,11,2], [5,8,4,5]] 思路: 老深度优先了。 程序:# Definition for a binary tree node. # c...

Leetcode练习(Python):树类:求根到叶子节点数字之和:给定一个二叉树,它的每个结点都存放一个 0-9 的数字,每条从根到叶子节点的路径都代表一个数字。 例如,从根到叶子节点路径 1-&

题目: 求根到叶子节点数字之和:给定一个二叉树,它的每个结点都存放一个 0-9 的数字,每条从根到叶子节点的路径都代表一个数字。 例如,从根到叶子节点路径 1->2->3 代表数字 123。 计算从根到叶子节点生成的所有数字之和。 说明: 叶子节点是指没有子节点的节点。 思路: 深度优先。 程序:# Definition for a binary tree node. # class TreeNode: # def __init__(self, x): # self.val = x # self.left...