经典算法50例万般自然

【题目1】有一对兔子,从出生后第3个月起每个月都生一对兔子,小兔子长到第三个月后每个月又生一对兔子,假如兔子都不死,则每个月的兔子总数为多少。

functionmainFun(){for(leti=1;i<=20;i++){console.log(`${i}月兔子总数:${getEveryMonthNum(i)}`);}}functiongetEveryMonthNum(month){if(month==1||month==2){return1;}else{returngetEveryMonthNum(month-1)+getEveryMonthNum(month-2);}}mainFun();结果:

1月兔子总数:1只2月兔子总数:1只3月兔子总数:2只4月兔子总数:3只5月兔子总数:5只6月兔子总数:8只7月兔子总数:13只8月兔子总数:21只9月兔子总数:34只10月兔子总数:55只11月兔子总数:89只12月兔子总数:144只13月兔子总数:233只14月兔子总数:377只15月兔子总数:610只16月兔子总数:987只17月兔子总数:1597只18月兔子总数:2584只19月兔子总数:4181只20月兔子总数:6765只【题目2】判断1-100之间有多少个素数,并输出所有素数(素数的定义:一个大于1的自然数,除了1和它本身外,不能整除以其他自然数,换句话说就是该数除了1和它本身以外不再有其他的因数的数才是素数)。

functionmainFun(){letnum=0;for(leti=0;i<=100;i++){letflog=true;if(i===0)continue;for(letj=2;j<=Math.sqrt(i);j++){//Math.sqrt(i)求平方根if(i%j===0)flog=false;}if(flog){console.log(i);num++;}}console.log(`0-100之间所有素数个数:${num}。`);}mainFun();123571113171923293137414347535961677173798389970-100之间所有素数个数:26。【题目3】打印出所有的水仙花数。所谓水仙花数,是指一个三位数,其各位数字立方和等于该数本身。例如:153是一个水仙花数,因为153=1^3+5^3+3^3。

functionmainFun(){for(leti=100;i<=999;i++){constgw=i%10;constsw=parseInt(i/10)%10;constbw=parseInt(i/100);if(i===Math.pow(gw,3)+Math.pow(sw,3)+Math.pow(bw,3)){console.log(i);}}}mainFun();【题目4】将一个正整数分解质因数。例如:输入90,打印出90=2*3*3*5。

functionmainFun(arg){letnum=arg,arr=[];for(leti=2;i<=Math.sqrt(arg);i++){if(arg%i===0){arr.push(i);arg/=i;i--;}}console.log(`${num}=${arr.join('*')}*${arg}`)}mainFun(90);结果:

90=2*3*3*5【题目5】利用条件运算符的嵌套来完成此题:90分及以上的同学用A表示,60~89分之间的用B表示,60分以下的用C表示。

functionmainFun(arg){returnarg>100||arg<0'Error':arg>=90'A':arg<60'C':'B';}console.log(mainFun(90));结果

A【题目6】输入两个正整数m和n,求其最大公约数和最小公倍数。

functionmainFun(x,y){letm=x,n=y,greatestCommonDivisor=0;while(true){if((m=m%n)===0){greatestCommonDivisor=n;break;}if((n=n%m)===0){greatestCommonDivisor=m;break;}}constleastCommonMultiple=x*y/greatestCommonDivisor;return"最大公约数:"+greatestCommonDivisor+"\n最小公倍数:"+leastCommonMultiple;}console.log(mainFun(9,2));结果:

最大公约数:1最小公倍数:18【题目7】输入一行字符,分别统计出其中英文字母、空格、数字、中文和其它字符的个数。

functionmainFun(arg){letspace=0,//空格letter=0,//字母digit=0,//数字cn=0,//中文other=0;//其他字符conststrs=arg.split('');for(conststrofstrs){if(/\s/g.test(str))space++;elseif(/[a-zA-Z]/g.test(str))letter++;elseif(/\d/g.test(str))digit++;elseif(/[\u4e00-\u9fa5]/g.test(str))cn++;elseother++;}return`空格:${space}\n字母:${letter}\n数字:${digit}\n中文:${cn}\n其他字符:${other}`}console.log(mainFun('abCD$哈哈'));结果:

空格:2字母:4数字:0中文:2其他字符:1【题目8】求s=a+aa+aaa+aaaa+aa...a的值,其中a是一个数字,几个数相加由键盘控制。

functionmainFun(a,n){lettemp=a,sum=a;for(leti=1;i

123【题目9】一个数如果恰好等于它的因子之和,这个数就称为完数,例如6=1+2+3。编程找出1000以内的所有完数。

constmainFunc=()=>{for(leti=1;i<1000;i++){letsum=0;for(letj=1;j<=i/2;j++){if(i%j==0){sum+=j;}}if(i==sum){console.log(i);}}}mainFunc();结果:

628496【题目10】一球从100米高度自由落下,每次落地后反跳回原高度的一半再落下。求它在第10次落地时,共经过多少米,第10次反弹多高。

constmainFunc=()=>{lets=0,h=100;for(leti=1;i<=10;i++){s+=h;h/=2;s+=h;}console.log("经过路程:"+(s-h));console.log("反弹高度:"+h);}mainFunc();结果:

经过路程:299.609375反弹高度:0.09765625【题目11】有1、2、3、4四个数字,能组成多少个互不相同且无重复数字的三位数?都是多少?

constmainFunc=()=>{letnums=[];for(leta=1;a<=4;a++){for(letb=1;b<=4;b++){for(letc=1;c<=4;c++){if(a!=b&&b!=c&&c!=a){nums.push(""+a+b+c);}}}}console.log(nums,'\n数量:'+nums.length);}mainFunc();结果:

['123','124','132','134','142','143','213','214','231','234','241','243','312','314','321','324','341','342','412','413','421','423','431','432']数量:24【题目12】企业发放的奖金根据利润提成,利润(I)低于或等于10万元时,奖金可提10%;利润高于10万元,低于20万元时,低于10万元的部分按10%提成,高于10万元的部分,可提成7.5%;20万到40万之间时,高于20万元的部分,可提成5%;40万到60万之间时,高于40万元的部分,可提成3%;60万到100万之间时,高于60万元的部分,可提成1.5%;高于100万元时,超过100万元的部分按1%提成。从键盘输入当月利润I,求应发放奖金总数?

constmainFunc=(num)=>{letbonus=num>10num>20num>40num>60num>100function100_(num):function60_100(num):function40_60(num):function20_40(num):function10_20(num):function_10(num);console.log(bonus);}mainFunc(120);functionfunction_10(num){returnnum*0.1;}functionfunction10_20(num){return(num-10)*0.075+function_10(10);}functionfunction20_40(num){return(num-20)*0.05+function10_20(20);}functionfunction40_60(num){return(num-40)*0.03+function20_40(40);}functionfunction60_100(num){return(num-60)*0.015+function40_60(60);}functionfunction100_(num){return(num-100)*0.01+function60_100(100);}结果:

4.15【题目13】一个整数,它加上100后是一个完全平方数,再加上168又是一个完全平方数,请问该数是多少?packageleif;

publicclassTest{publicstaticvoidmain(String[]args){for(inti=-100;i<=10000;i++){if(Math.sqrt(i+100)%1==0){if(Math.sqrt(i+100+168)%1==0){System.out.println(i);}}}}}【题目14】输入某年某月某日,判断这一天是这一年的第几天。packageleif;

importjava.text.ParseException;importjava.text.SimpleDateFormat;importjava.util.Calendar;importjava.util.Scanner;

publicclassTest{publicstaticvoidmain(String[]args){Scannerscanner=newScanner(System.in);Stringdate=scanner.next();Calendarcalendar=Calendar.getInstance();

try{calendar.setTime(newSimpleDateFormat("yyyy-MM-dd").parse(date));System.out.println(calendar.get(Calendar.DAY_OF_YEAR));}catch(ParseExceptione){e.printStackTrace();}finally{scanner.close();}}}【题目15】输入三个整数x、y、z,请把这三个数由小到大输出。packageleif;

importjava.util.Arrays;importjava.util.Scanner;

publicclassTest{publicstaticvoidmain(String[]args){Scannerscanner=newScanner(System.in);intx=scanner.nextInt();inty=scanner.nextInt();intz=scanner.nextInt();int[]is={x,y,z};Arrays.sort(is);System.out.println(Arrays.toString(is));scanner.close();}}【题目16】打印九九乘法表。packageleif;

publicclassTest{publicstaticvoidmain(String[]args){for(inti=1;i<=9;i++){for(intj=1;j<=i;j++){System.out.print(j+"*"+i+"="+(i*j)+"\t");}

System.out.println();}}}【题目17】猴子吃桃问题:猴子第一天摘下若干个桃子,当即吃了一半,还不过瘾,又多吃了一个。第二天早上又将剩下的桃子吃掉一半,又多吃了一个。以后每天早上都吃了前一天剩下的一半零一个。到第10天早上想再吃时,见只剩下一个桃子了。求第一天共摘了多少。packageleif;

publicclassTest{publicstaticvoidmain(String[]args){intpeach=1;

for(inti=9;i>=1;i--){peach=(peach+1)*2;}System.out.println(peach);}}【题目18】两个乒乓球队进行比赛,各出三人,甲队为a、b、c三人,乙队为x、y、z三人,已抽签决定比赛名单。有人向队员打听比赛的名单,a说他不和x比,c说他不和x,z比,请编程序找出三队赛手的名单。packageleif;

publicclassTest{publicstaticvoidmain(String[]args){char[]m={'a','b','c'};char[]n={'x','y','z'};

for(inti=0;i

packageleif;

importjava.util.Scanner;

publicclassTest{publicstaticvoidmain(String[]args){Scannerscanner=newScanner(System.in);inti=scanner.nextInt();

for(introw=1;row<=i;row++){for(intcol=1;col<=Math.abs((i+1)/2-row);col++){System.out.print("");}for(intcol=1;col<=i-2*Math.abs((i+1)/2-row);col++){System.out.print("*");}System.out.println();}scanner.close();}}【题目20】有一分数序列:2/1、3/2、5/3、8/5、13/8、21/13……求出这个数列的前20项之和。packageleif;

publicclassTest{publicstaticvoidmain(String[]args){doublesum=0;

for(inti=1;i<=20;i++){sum+=getNumerator(i)/getDenominator(i);}System.out.println(sum);}publicstaticdoublegetNumerator(intnumerator){if(numerator==1){return2;}elseif(numerator==2){return3;}else{returngetNumerator(numerator-1)+getNumerator(numerator-2);}}publicstaticdoublegetDenominator(intdenominator){if(denominator==1){return1;}elseif(denominator==2){return2;}else{returngetNumerator(denominator-1)+getNumerator(denominator-2);}}}【题目21】求1!+2!+3!+…+20!的和。packageleif;

publicclassTest{publicstaticvoidmain(String[]args){intsum=0;

for(inti=1;i<=20;i++){sum+=getFactorial(i);}System.out.println(sum);}publicstaticintgetFactorial(intnumber){if(number==1){return1;}else{returnnumber*getFactorial(number-1);}}}【题目22】利用递归方法求5!。packageleif;

publicclassTest{publicstaticvoidmain(String[]args){System.out.println(getFactorial(5));}

publicstaticintgetFactorial(intnumber){if(number==1){return1;}else{returnnumber*getFactorial(number-1);}}}【题目23】有五个人坐在一起,问第5个人的岁数,他说比第4个人大两岁,问第4个人的岁数,他说比第3个人大两岁,问第三个人的岁数,他说比第2个人大两岁,问第2个人的岁数,他说比第1个人大两岁,最后问第1个人,他说是10岁。请问第五个人多大?packageleif;

publicclassTest{publicstaticvoidmain(String[]args){intage=10;

for(inti=4;i>=1;i--){age+=2;}System.out.println(age);}}【题目24】输入一个不多于5位的正整数,求它是几位数并逆序打印出各位数字。packageleif;

publicclassTest{publicstaticvoidmain(String[]args){Scannerscanner=newScanner(System.in);inti=10000;

while((i=scanner.nextInt())>=10000||i<=0){System.out.println("输入一个不多于5位的正整数");}StringBuilderstringBuilder=newStringBuilder(i+"");System.out.println(stringBuilder.length());System.out.println(stringBuilder.reverse());scanner.close();}}【题目25】输入一个5位数,判断它是不是回文数。即个位与万位相同、十位与千位相同。packageleif;

publicclassTest{publicstaticvoidmain(String[]args){Scannerscanner=newScanner(System.in);inti=0;

while((i=scanner.nextInt())>99999||i<10000){System.out.println("输入一个5位数");}StringBuilderstringBuilder=newStringBuilder(i+"");System.out.println(stringBuilder.toString().equals(stringBuilder.reverse().toString())"是回文数":"不是回文数");scanner.close();}}【题目26】请输入星期几的第一个字母来判断一下是星期几,如果第一个字母一样,则继续判断第二个字母。packageleif;

publicclassTest{publicstaticvoidmain(String[]args){Scannerscanner=newScanner(System.in);System.out.print("请输入第一个字母:");Stringletter1=scanner.next();

switch(letter1){case"m":case"M":System.out.println("星期一");break;case"t":case"T":System.out.print("请输入第二个字母:");Stringletter2=scanner.next();switch(letter2){case"u":case"U":System.out.println("星期二");break;case"h":case"H":System.out.println("星期四");break;default:System.out.println("Error");break;}break;case"w":case"W":System.out.println("星期三");break;case"f":case"F":System.out.println("星期五");break;case"s":case"S":System.out.print("请输入第二个字母:");Stringletter3=scanner.next();switch(letter3){case"a":case"A":System.out.println("星期六");break;case"u":case"U":System.out.println("星期日");break;default:System.out.println("Error");break;}break;default:System.out.println("Error");break;}scanner.close();}}【题目27】求100之内的素数。packageleif;

publicclassTest{publicstaticvoidmain(String[]args){label:for(inti=2;i<100;i++){for(intj=2;j<=Math.sqrt(i);j++){if(i%j==0){continuelabel;}}

System.out.println(i);}}}【题目28】对10个数进行排序。packageleif;

importjava.util.Arrays;

publicclassTest{publicstaticvoidmain(String[]args){int[]is=newint[10];

for(inti=0;i

publicclassTest{publicstaticvoidmain(String[]args){int[][]iss=newint[3][3];

for(inti=0;i

importjava.util.Arrays;importjava.util.Comparator;importjava.util.Scanner;

publicclassTest{publicstaticvoidmain(String[]args){Scannerscanner=newScanner(System.in);Integer[]is=newInteger[10];

for(inti=0;i(){@Overridepublicintcompare(Integeri1,Integeri2){returni2-i1;}});}System.out.println(Arrays.toString(newIs));scanner.close();}}【题目31】将一个数组逆序输出。packageleif;

for(inti=0;i=0;i--){System.out.print(is[i]+"");}}}【题目32】取一个整数a从右端开始的4~7位。packageleif;

publicclassTest{publicstaticvoidmain(String[]args){Scannerscanner=newScanner(System.in);inti=scanner.nextInt();Stringstring=String.valueOf(i);System.out.println(string.substring(string.length()-7,string.length()-4+1));scanner.close();}}【题目33】打印出杨辉三角形。packageleif;

importjava.util.ArrayList;importjava.util.List;importjava.util.Scanner;

publicclassTest{publicstaticvoidmain(String[]args){Scannerscanner=newScanner(System.in);intnumRows=scanner.nextInt();ListrowList=newArrayList();

for(introw=0;rowcolList=newArrayList();for(intcol=0;col<=row;col++){if(col==0||row==col){colList.add(1);}else{colList.add(rowList.get(row-1).get(col)+rowList.get(row-1).get(col-1));}}rowList.add(colList);}for(ListiList:rowList){System.out.println(iList);}scanner.close();}}【题目34】输入3个数a、b、c,按大小顺序输出。packageleif;

publicclassTest{publicstaticvoidmain(String[]args){Scannerscanner=newScanner(System.in);int[]is=newint[3];is[0]=scanner.nextInt();is[1]=scanner.nextInt();is[2]=scanner.nextInt();Arrays.sort(is);System.out.println(Arrays.toString(is));scanner.close();}}【题目35】输入数组,最大的与第一个元素交换,最小的与最后一个元素交换,输出数组。packageleif;

for(inti=0;iis[maxIndex]){maxIndex=i;}if(is[i]

importjava.util.LinkedList;importjava.util.Queue;

publicclassTest{publicstaticvoidmain(String[]args){QueueiQueue=newLinkedList();

intn=(int)(Math.random()*10+1);System.out.println(n);for(inti=0;i

importjava.util.LinkedList;importjava.util.List;

publicclassTest{publicstaticvoidmain(String[]args){ListiList=newLinkedList();intn=(int)(Math.random()*10+1);System.out.println(n);

for(inti=1;i<=n;i++){iList.add(i);}intk=(int)(Math.random()*10+1);System.out.println(k);intm=(int)(Math.random()*10+1);System.out.println(m);while(iList.size()>1){System.out.println(iList);k=(k+m-1)%n;if(k==0){k=iList.size();}iList.remove(k-1);n-=1;}System.out.println(iList);}}【题目38】编写一个方法求一个字符串的长度。packageleif;

publicclassTest{publicstaticvoidmain(String[]args){Scannerscanner=newScanner(System.in);System.out.println(function(scanner.nextLine()));scanner.close();}

publicstaticintfunction(Strings){returns.length();}}【题目39】编写一个方法,当n为偶数时,调用方法求1/2+1/4+…+1/n,当n为奇数时,调用方法求1/1+1/3+…+1/n。packageleif;

publicclassTest{publicstaticvoidmain(String[]args){Scannerscanner=newScanner(System.in);System.out.println(function(scanner.nextInt()));scanner.close();}

publicstaticdoublefunction(intn){doublesum=0;if(n%2==0){for(inti=2;i<=n;i+=2){sum+=1.0/i;}}else{for(inti=1;i<=n;i+=2){sum+=1.0/i;}}returnsum;}}【题目40】字符串排序。packageleif;

importjava.util.ArrayList;importjava.util.Collections;importjava.util.List;importjava.util.Random;

publicclassTest{publicstaticvoidmain(String[]args){Randomrandom=newRandom();ListsList=newArrayList();

for(inti=1;i<=10;i++){StringBuilderstringBuilder=newStringBuilder();for(intj=1;j<=10;j++){stringBuilder.append((char)random.nextInt(128));}sList.add(stringBuilder.toString());}System.out.println(sList);Collections.sort(sList);System.out.println(sList);}}【题目41】海滩上有一堆桃子,五只猴子来分。第一只猴子把这堆桃子凭据分为五份,多了一个,这只猴子把多的一个扔入海中,拿走了一份;第二只猴子把剩下的桃子又平均分成五份,又多了一个,它同样把多的一个扔入海中,拿走了一份。第三、第四、第五只猴子都是这样做的,问海滩上原来最少有多少个桃子?packageleif;

publicclassTest{publicstaticvoidmain(String[]args){intsum=6;

for(inti=4;i>=1;i--){sum=sum*5+1;}System.out.println(sum);}}【题目42】已知809*=800*+9*,其中代表的两位数,8*的结果为两位数,9*的结果为3位数。求代表的两位数及809*后的结果。packageleif;

publicclassTest{publicstaticvoidmain(String[]args){for(inti=12;i<=12;i++){if(809*i==800*i+9*i){System.out.println(i+""+(809*i));}}}}【题目43】求0~7所能组成的奇数个数(数字不能重复)。packageleif;

publicclassTest{publicstaticvoidmain(String[]args){intsum=4*6;

for(inti=0;i<6;i++){sum*=6-i;}System.out.println(sum);}}【题目44】哥德巴赫猜想:证明一个大于2的偶数总能表示为两个素数之和。packageleif;

publicclassTest{publicstaticvoidmain(String[]args){for(intn=2;n<=100;n+=2){for(inti=2;i<=n-2;i++){if(function(i)){if(function(n-i)){System.out.println(n+"="+i+"+"+(n-i));}}}}}

publicstaticbooleanfunction(intn){for(inti=2;i<=Math.sqrt(n);i++){if(n%i==0){returnfalse;}}returntrue;}}【题目45】判断一个素数能把几个9整除,如999999%7=0。packageleif;

importjava.util.ArrayList;importjava.util.List;

publicclassTest{publicstaticvoidmain(String[]args){label:for(inti:function()){StringBuilderstringBuilder=newStringBuilder("9");

while(true){longl=0L;try{l=Long.valueOf(stringBuilder.toString());}catch(NumberFormatExceptione){System.out.println(i+"NumberFormatException");continuelabel;}if(l%i==0){System.out.println(stringBuilder+"%"+i+"=0");continuelabel;}stringBuilder.append(9);}}}publicstaticListfunction(){ListiList=newArrayList();label:for(inti=2;i<=100;i++){for(intj=2;j<=Math.sqrt(i);j++){if(i%j==0){continuelabel;}}iList.add(i);}System.out.println(iList);returniList;}}【题目46】两个字符串连接。packageleif;

publicclassTest{publicstaticvoidmain(String[]args){Strings1="1";longtime=System.currentTimeMillis();

publicclassTest{publicstaticvoidmain(String[]args){for(inti=1;i<=7;i++){intrandom=(int)(Math.random()*50+1);System.out.println(random);

publicclassTest{publicstaticvoidmain(String[]args){inti=(int)(Math.random()*9000+1000);System.out.println(i);inta=i/1000;intb=i/100%10;intc=i/10%10;intd=i%10;System.out.println(""+(d+5)%10+(c+5)%10+(b+5)%10+(a+5)%10);}}【题目49】计算字符串中子串出现的次数。packageleif;

importjava.util.Scanner;importjava.util.regex.Matcher;importjava.util.regex.Pattern;

publicclassTest{publicstaticvoidmain(String[]args){Scannerscanner=newScanner(System.in);System.out.println("请输入一个字符串:");Strings1=scanner.nextLine();System.out.println("请输入要查找的子字符串:");Strings2=scanner.nextLine();Patternpattern=Pattern.compile(s2,Pattern.CANON_EQ);Matchermatcher=pattern.matcher(s1);intcounter=0;

while(matcher.find()){counter++;}System.out.println(s2+"在"+s1+"出现的次数为:"+counter);scanner.close();}}【题目50】有2个学生,每个学生有3门课的成绩,从磁盘文件中分别读入每个学生的学号、姓名和三门课成绩,计算出每个学生的总成绩,把原有的数据和计算出的数据输出到磁盘文件中。

importjava.io.File;importjava.io.FileWriter;importjava.io.IOException;importjava.util.ArrayList;importjava.util.List;

importorg.dom4j.Attribute;importorg.dom4j.Document;importorg.dom4j.DocumentException;importorg.dom4j.DocumentHelper;importorg.dom4j.Element;importorg.dom4j.io.OutputFormat;importorg.dom4j.io.SAXReader;importorg.dom4j.io.XMLWriter;

publicclassTest{publicstaticvoidmain(String[]args){ListstudentList=newArrayList();Filefile=newFile("C:\Users\Administrator\Desktop\test50.xml");SAXReadersaxReader=newSAXReader();saxReader.setEncoding("UTF-8");

classStudent{privateintid;privateStringname;privateListsubjectList=newArrayList();privatedoubletotalScore;

publicintgetId(){returnid;}publicvoidsetId(intid){this.id=id;}publicStringgetName(){returnname;}publicvoidsetName(Stringname){this.name=name;}publicListgetSubjectList(){returnsubjectList;}publicvoidaddToSubjectList(Subjectsubject){subjectList.add(subject);}publicdoublegetTotalScore(){returntotalScore;}publicvoidsetTotalScore(doubletotalScore){this.totalScore=totalScore;}@OverridepublicStringtoString(){return"Student[id="+id+",name="+name+",subjectList="+subjectList+",totalScore="+totalScore+"]";}}

classSubject{privateStringname;privatedoublescore;

publicStringgetName(){returnname;}publicvoidsetName(Stringname){this.name=name;}publicdoublegetScore(){returnscore;}publicvoidsetScore(doublescore){this.score=score;}@OverridepublicStringtoString(){return"Subject[name="+name+",score="+score+"]";}

THE END
1.小学数学简便运算定律与简便计算知识讲解大盘点!加法除法分配律注意:加法结合律有着广泛的应用,如果其中有两个加数的和刚好是整十、整百、整千的话,那么就可以利用加法交换律将原式中的加数进行调换位置,再将这两个加数结合起来先运算。 例1.用简便方法计算下式: (1)63+16+84 (2)76+15+24 (3)140+639+860 https://www.163.com/dy/article/JJN99GMG05566S5I.html
2.刷题32动态规划1动规是由前一个状态推导出来的,而贪心是局部直接选最优的,对于刷题来说就够用了。 动态规划解题五部曲: 确定dp数组(dp table)以及下标的含义 确定递推公式 dp数组如何初始化 确定遍历顺序 举例推导dp数组 debug过程:把dp数组打印出来;把状态转移在dp数组的上具体情况模拟一遍 2.leetcode斐波那契数509 2.1题目 2.2https://zhuanlan.zhihu.com/p/12807570388
3.算法讲解及例子算法案例一、排序算法 1、冒泡排序 重复走访过要排序的数列,一次比较相邻的两个元素,如果他们顺序错误就交换,直到没有再需要交换。两个for循环,第一个循环0len-1,第二个循环0len-1-i voidbubble_sort(ints[],intn){intflag=0;for(inti=0;i<=n-1;i++){flag=0;for(intj=0;j<=n-i-1;j++){if(s[j]>https://blog.csdn.net/stupidcunning/article/details/123692706
4.[Python从零到壹]十三.机器学习之聚类算法四万字总结(K聚类算法在Scikit-Learn机器学习包中,主要调用sklearn.cluster子类实现,下面对常见的聚类算法进行简单描述,后面主要介绍K-Means算法和Birch算法实例。 (1) K-Means K-Means聚类算法最早起源于信号处理,是一种最经典的聚类分析方法。它是一种自下而上的聚类方法,采用划分法实现,其优点是简单、速度快;缺点是必须提供聚https://cloud.tencent.com/developer/article/1910131
5.javascript常用经典算法实例详解javascript技巧这篇文章主要介绍了javascript常用算法,结合实例形式较为详细的分析总结了JavaScript中常见的各种排序算法以及堆、栈、链表等数据结构的相关实现与使用技巧,需要的朋友可以参考下GPT4.0+Midjourney绘画+国内大模型 会员永久免费使用!【 如果你想靠AI翻身,你先需要一个靠谱的工具!】本文实例讲述了javascript常用算法。分享给https://www.jb51.net/article/75437.htm
6.监督学习有哪些常见算法?都是如何应用的监督学习有哪些常见算法?都是如何应用的 掌握一些最常用的监督学习算法能够帮助我们解决实际问题,本文将通过很多实例进行详细介绍。 ?什么是监督学习? 监督学习是机器学习的子集,监督学习会对机器学习模型的输入数据进行标记,并对其进行练习。因此,监督模型能最大限度地预测模型的输出结果。https://www.51cto.com/article/712484.html
7.AWS常见问题汇总Q: ELB/ALB 采用什么算法转发请求到后端实例? A: ELB TCP 监听端口使用轮询算法,HTTP 监听端口使用未完成最少请求算法。 ALB 使用轮询算法。 如果只有1个健康的后端实例,所有请求都会被转到此实例。如果没有任何健康的后端实例,请求会被转发到所有已注册但是不健康的实例。 https://www.imooc.com/article/47391
8.科学网—[转载]基于容器云技术的典型遥感智能解译算法集成3 遥感深度学习算法集成实例 3.1 数据集与实验环境 为了验证该集成方案的有效性,本节基于Docker和Kubernetes的遥感深度学习算法集成方案,以DOTA、UC Merced LandUse、DSLT、SpaceNet7这4个数据集为例,选取5种不同的基于深度学习的遥感智能解译算法,介绍4种遥感产品的生产。 https://blog.sciencenet.cn/blog-3472670-1339282.html
9.转型AI产品经理需要掌握的硬知识二:AI常见概念和算法梳理上一篇文章介绍AI产品经理能力模型,人工智能的发展历史,人工智能常见概念的结构梳理,也简要做了BAT人工智能的优势分析,感兴趣的朋友可以点击链接查看上文。转型AI产品经理需要掌握的硬知识一:AI产品能力框架和看待AI的几个视角本文将继续介绍Ai产品经理需要理解的一些概念,常见AI算法,机器学习的工作方式和三大流派,使用Tenhttps://www.jianshu.com/p/6efadb29420f
10.“才”聚天开,勇往“职”前兰力科(天津)科技集团有限公司是以中科院和国内重点高校为依托,从事科教仪器、医疗器械、健康医疗三大支柱产业的专业化的产业集团。是以生产电化学分析仪器闻名于中国分析仪器行业,是以光电化学技术应用于生物医学工程领域闻名于中国医疗器械行业。集团下控7个独立子公司。https://www.tjrc.com.cn/app/article/content/VE4rR2NWRjUzUU5SOFFxWDdRa09oZz09.shtml
11.各种排序算法大全ppt课件11、 3 4 5 6.1.4 希尔排序希尔排序 运用实例t 30 1 2 3 4 50 1 2 3 4 5t 2t 16.1.4 希尔排序希尔排序 算法分析 开场时 gap 的值较大, 子序列中的记录较少, 排序速度较快 随着排序进展, gap 值逐渐变小, 子序列中记录个数逐渐变多,由于前面大多数记录已根本有序, 所以排序速度依然很快 Gap的https://www.renrendoc.com/paper/213502782.html
12.多种算法(精选七篇)经过对上述交易模式的仔细研究和分析,笔者认为:不管是哪种模式,都有一个共同的要素——匹配交易,即有一个需方队列和一个供方队列,两个队列根据不同的交易模式进行不同地排序,并形成有效的匹配对队列,这个队列按照煤耗差或者价差排序,形成一个有序匹配对队列,按照这个思路,笔者设计了统一的算法,其中总算法框图如图3https://www.360wenmi.com/f/cnkey4of91dc.html
13.c++史上最全算法详解,0基瓷秒懂!(爆肝上万字)递归函数通常用于解决具有递归性质的问题,例如树、图和集合等数据结构的遍历,以及分治算法等。通过将问题分解为更小的子问题,递归函数能够简化问题的解决过程,并使代码更加简洁和易于理解。然而,使用递归函数需要注意避免栈溢出和正确处理终止条件,以确保程序的正确性和效率。 二、核心代码实例 以下是一个简单的C++程序https://www.acwing.com/blog/content/40238/