【JAVA算法1】教程文章相关的互联网学习教程文章

Java算法

我们常见的排序分为以下几类:插入排序(直接插入排序,希尔排序)交换排序(冒泡排序,快速排序)选择排序(直接选择排序,堆排序)归并排序分配排序(箱排序,基数排序)  对于以上的排序有什么不同呢?  需要的辅助空间组多的:归并排序, 需要的辅助空间最小的:堆排序,平均速度最快的:快速排序时间复杂度:O(nlogn): 快速排序, 堆排序, 归并排序O(n2): 直接插入排序, 冒泡排序, 直接选择排序O(n): 基数排序空间复杂度...

java算法 蓝桥杯(题+答案) 生日蜡烛【代码】

2.生日蜡烛 (结果填空)某君从某年开始每年都举办一次生日party,并且每次都要吹熄与年龄相同根数的蜡烛。现在算起来,他一共吹熄了236根蜡烛。请问,他从多少岁开始过生日party的?请填写他开始过生日party的年龄数。注意:你提交的应该是一个整数,不要填写任何多余的内容或说明性文字。 1publicclass _2生日蜡烛 {2publicstaticvoid main(String[] args) {3for (int i = 1; i <= 100; i++) {4for (int j = 1; j <= 100; j++) {5...

C++、C#、java算法学习日记04----二分插入排序【图】

经过上几篇对排序算法的了解,我们发现,所谓的排序也就是确定一个数组中每个元素的位置,然后对号入座,其过程也就是找到该元素的位置。确定位置,使用二分法可以达到很高的效率,我们将他应用到插入排序中就算是对上篇中排序的一种优化,能提高效率。基本思想: 与上篇中的插入排序类似分已排序和未排序部分,然后将未排序 部分元素逐个插入,但是插入的过程不同,需要每次求一个 中间位置,和中间位置元素比较大小,然后根据...

蓝桥杯java 算法提高 扶老奶奶过街【代码】

一共有5个红领巾,编号分别为A、B、C、D、E,老奶奶被他们其中一个扶过了马路。  五个红领巾各自说话:  A :我和E都没有扶老奶奶  B :老奶奶是被C和E其中一个扶过大街的  C :老奶奶是被我和D其中一个扶过大街的  D :B和C都没有扶老奶奶过街  E :我没有扶老奶奶  已知五个红领巾中有且只有2个人说的是真话,请问是谁扶这老奶奶过了街?  若有多个答案,在一行中输出,编号之间用空格隔开。  例如  A B C ...

JAVA算法1【代码】

摘自传智播客公开课package test; /** 传智播客公开课笔记*/ public class Arithmetic {public static void main(String[] args) {/*题设:现有0到99,共计100个整数,各不相同,将所有数放入一个数组,随机排布。数组长度101,多余的数字是0到99其中任意一个数(唯一重复的数字)问题:将这个重复的数字找出来*//** 构造题目*/int[] num = new int[101];for(int i=0;i<num.length;i++) {num[i] = i;}num[100] = 55;for(int i=0;i<100...

蓝桥杯java 算法提高 统计单词数【代码】

问题描述  统计输入英文文章段落中不同单词(单词有大小写之分,但统计时忽略大小写)各自出现的次数。 输入段落中所含单词的总数不超过100,最长单词的长度不超过20个字母.输入格式  一个包含若干句子的段落, 每个句子由若干英文单词组成. 除空格,逗号和句号外, 这些输入的句子中不含其他非字母字符, 并且, 逗号和句号紧跟在它前面的英文单词后面, 中间没有空格. 段落最后一个字符是回车符,表示输入结束.输出格式  若段落中共...

JavaScript算法 ,Python算法,Go算法,java算法,系列之【归并排序】篇【代码】【图】

常见的内部排序算法有:插入排序、希尔排序、选择排序、冒泡排序、归并排序、快速排序、堆排序、基数排序等。用一张图概括: 650) this.width=650;" src="/upload/getfiles/default/2022/11/8/20221108060054389.jpg" title="1513609480-59142359dda6f_articlex.png" />归并排序(英语:Merge sort,或mergesort),是创建在归并操作上的一种有效的排序算法,效率为O(n log n)。1945年由约翰·冯·诺伊曼首次提出。该算法是采用分治法...

高精度运算 Java算法【代码】

问题描述   输入两个整数a和b,输出这两个整数的和。a和b都不超过100位。 算法描述   由于a和b都比较大,所以不能直接使用语言中的标准数据类型来存储。对于这种问题,一般使用数组来处理。   定义一个数组A,A[0]用于存储a的个位,A[1]用于存储a的十位,依此类推。同样可以用一个数组B来存储b。   计算c = a + b的时候,首先将A[0]与B[0]相加,如果有进位产生,则把进位(即和的十位数)存入r,把和的个位数存入C[0],即C...

Java算法-符号|【代码】

|或运算符或运算符用符号“|”表示,其运算规律如下:两个位只要有一个为1,那么结果就是1,否则就为0下面看一个简单的例子。publicclass data14 { publicstaticvoid main(String[] args) { int a=129; int b=128; System.out.println("a 和b 或的结果是:"+(a|b)); } } 运行结果a 和b 或的结果是:129下面分析这个程序段:a 的值是129,转换成二进制就是10000001,而b 的值是128,转换成二进制就是10000000,根据或运算符的运算规...

Java 算法(一)贪心算法【代码】

Java 算法(一)贪心算法数据结构与算法目录(https://www.cnblogs.com/binarylei/p/10115867.html)一、贪心算法什么是贪心算法?是指在对问题进行求解时,总是做出当前看来是最好的选择。也就是说,不从整体最优上加以考虑,所得出的结果仅仅是某种意义上的局部最优解。 因此贪心算法不会对所有问题都能得到整体最优解,但对于很多问题能产生整体最优解或整体最优解的近似解。贪心算法的构成部分:候选对象集合 :候选添加进解的对...

Java算法--串的简单处理【代码】【图】

题目例如以下:串的处理 在实际的开发工作中。对字符串的处理是最常见的编程任务。 本题目即是要求程序对用户输入的串进行处理。详细规则例如以下: 1. 把每个单词的首字母变为大写。 2. 把数字与字母之间用下划线字符(_)分开,使得更清晰 3. 把单词中间有多个空格的调整为1个空格。 比如: 用户输入: you and me what cpp2005program 则程序输出: You And Me What Cpp_2005_program 用户输入: this is ...

java算法 蓝桥杯 摆花【代码】

问题描述  小明的花店新开张,为了吸引顾客,他想在花店的门口摆上一排花,共m盆。通过调查顾客的喜好,小明列出了顾客最喜欢的n种花,从1到n标号。为了在门口展出更多种花,规定第i种花不能超过ai盆,摆花时同一种花放在一起,且不同种类的花需按标号的从小到大的顺序依次摆列。  试编程计算,一共有多少种不同的摆花方案。输入格式  第一行包含两个正整数n和m,中间用一个空格隔开。  第二行有n个整数,每两个整数之间用...

java算法---五家共井【代码】

古代数学巨著《九章算数》中有这么一道题叫“五家共井,甲二绠(汲水用的井绳)不足,如(接上)乙一绠;乙三绠不足,如丙一绠;丙四绠不足,如丁一绠;丁五绠不足,如戊一绠;戊六绠不足,如甲一绠,皆及。意思就是说五家人共用一口井,甲家的绳子用两条不够,还要再用乙家的绳子一条才能打到井水;乙家的绳子用三条不够,还要再用丙家的绳子一条才能打到井水;丙家的绳子用四条不够,还要再用丁家的绳子一条才能打到井水;丁家的...

Java 算法【代码】

1package com.test;2/** 3 * 打印出 100 以内的素数4 * 素数又称为质数,它的定义是:只能被 1 和被自己整除的整数。其中, 1 不是素数,任何时候都不用考虑 1。5 * @author Intel6 *7*/ 8publicclass Prime {910publicstaticvoid main(String[] args) { 11for (int i = 1; i < 100; i++) { 12if (isPrime(i)) { 13 System.out.print(i + " "); 14 } 15 } 16 } 1718privatestaticboolean is...

蓝桥杯算法训练 java算法 Fibonacci数列【代码】

问题描述Fibonacci数列的递推公式为:Fn=Fn-1+Fn-2,其中F1=F2=1。当n比较大时,Fn也非常大,现在我们想知道,Fn除以10007的余数是多少。输入格式输入包含一个整数n。输出格式输出一行,包含一个整数,表示Fn除以10007的余数。说明:在本题中,答案是要求Fn除以10007的余数,因此我们只要能算出这个余数即可,而不需要先计算出Fn的准确值,再将计算的结果除以10007取余数,直接计算余数往往比先算出原数再取余简单。样例输入10样例...