Java经典算法题有哪些
发表于:2025-01-31 作者:千家信息网编辑
千家信息网最后更新 2025年01月31日,这篇文章主要介绍"Java经典算法题有哪些",在日常操作中,相信很多人在Java经典算法题有哪些问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答"Java经典算法题有哪些"
千家信息网最后更新 2025年01月31日Java经典算法题有哪些
这篇文章主要介绍"Java经典算法题有哪些",在日常操作中,相信很多人在Java经典算法题有哪些问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答"Java经典算法题有哪些"的疑惑有所帮助!接下来,请跟着小编一起来学习吧!
题目一:
public class testClockwiseOutput { //顺时针打印一个矩阵 @Test public void test(){ int[][] num = new int[100][100]; int n = 4; int count =1; for(int i=0;i=end || end<=0)return; for(int i=start;i<=end;i++){ System.out.println(num[start][i]); } for(int i=start+1;i<=end;i++){ System.out.println(num[i][end]); } for(int i=end-1;i>=start;i--){ System.out.println(num[end][i]); } for(int i=end-1;i>start;i--){ System.out.println(num[i][start]); } output(num,start+1,end-1); } }
题目二:
给出一个排序好的数组和一个数,求数组中连续元素的和等于所给数的子数组
//给出一个排序好的数组和一个数,求数组中连续元素的和等于所给数的子数组 @Test public void test(){ int[] num = {1,2,2,3,4,5,6,7,8,9}; int sum = 7; findSum(num,sum); } public void findSum(int[] num,int sum){ int left=0; int right=0; for(int i=0;i题目三:
//字符数组组成的所有字符串 @Test public void test(){ //char[] cs = {'a','b','c','d','e'}; char[] cs = {'a','b','c'}; int length = cs.length; recursionSwap(cs,0,length); } public void swap(char[] cs,int index1,int index2){ char temp = cs[index1]; cs[index1]=cs[index2]; cs[index2]=temp; } public void recursionSwap(char[] cs,int start,int length){ if(start>=length-1){ print(cs); return; } for(int i=start;i题目四:
//数组组成的最小数 @Test public void test(){ int[] num={1,5,9,13,442,44,6,21,211}; qsort(num,0,num.length-1); System.out.println(Arrays.toString(num)); } public void qsort(int[] num,int left,int right){ if(lefttemp2){ return true; } else{ return false; } } 题目五:
//子数组***和 @Test public void test(){ int[] num = {1,-2,3,10,-4,7,2,-5}; //int[] num = {1,-2,3,10,-4,10,2,-5}; System.out.println(maxSum(num)); } public int maxSum(int[] num){ int curSum = 0; int curMaxSum = -99999999; int start = 0; int end = 0; for(int i=0;icurMaxSum){ curMaxSum = curSum; end = i; } } for(int i = start;i<=end;i++){ System.out.println(num[i]); } return curMaxSum; } 题目六:
public class testMinStack { //自定义栈,min函数得到当前最小值 @Test public void test(){ MinStack ms = new MinStack(); ms.push(5); System.out.println(ms.min()); ms.push(6); ms.push(2); ms.push(1); System.out.println(ms.min()); ms.pop(); System.out.println(ms.min()); ms.pop(); System.out.println(ms.min()); } } class MinStack{ private StackminStack = new Stack (); private Stack stack = new Stack (); public int pop(){ minStack.pop(); return stack.pop(); } public void push(int num){ if(minStack.size()<=0){ minStack.push(num); return; } Integer min = minStack.lastElement(); if(num 题目七:
//找出数组中出现次数大于一半的数 @Test public void test(){ int[] num = {1,2,2,2,2,2,2,4,2,4,6,4,2,6,8,2,7,7}; System.out.println(moreThanHaft(num)); } public int moreThanHaft(int[] num){ int result = -1; int times = 0; for(int i=0;i题目八:
//判断一个数组是否是另一个栈的出栈顺序 @Test public void test(){ int[] num = {1,2,3,4,5}; //int[] num1={1,2,3,5,4}; int[] num2={2,1,5,3,4}; Stacks1 = new Stack (); Stack s2 = new Stack (); for(int i=0;i<5;i++){ s2.push(num2[i]); } System.out.println(testOrder(num,s1,s2)); } public boolean testOrder(int[] num,Stack s1,Stack s2){ int length = num.length; for(int i=0;i 题目九:
//从扑克牌抽5张牌,0可以为任意数,判断是否是顺子 @Test public void test(){ int[] num = {0,1,5,3,2}; System.out.println(check(num)); } public boolean check(int[] num){ //0-13 int[] pai = new int[14]; for(int n : num){ pai[n]+=1; } qsort(num,0,num.length-1); int count = pai[0]; int start = 0; if(num[0]==0){ start=num[1]; } else{ start=num[0]; } for(int i = start;i<=start+5;i++){ if(pai[i]>1)return false; count += pai[i]; } if(count == 5)return true; else return false; } public void qsort(int[] num,int left,int right){ if(left=partition){ right--; } swap(num,left,right); while(left 题目十:
//输出第k个丑数(因子只有2,3,5) @Test public void test(){ findUglyNum(8); } public void findUglyNum(int index){ int[] num = new int[index]; int next = 1; num[0]=1; int index2=0; int index3=0; int index5=0; while(next到此,关于"Java经典算法题有哪些"的学习就结束了,希望能够解决大家的疑惑。理论与实践的搭配能更好的帮助大家学习,快去试试吧!若想继续学习更多相关知识,请继续关注网站,小编会继续努力为大家带来更多实用的文章!
数组
题目
算法
经典
学习
最小
个数
元素
字符
更多
帮助
排序
实用
接下来
代码
函数
只有
因子
字符串
扑克
数据库的安全要保护哪些东西
数据库安全各自的含义是什么
生产安全数据库录入
数据库的安全性及管理
数据库安全策略包含哪些
海淀数据库安全审计系统
建立农村房屋安全信息数据库
易用的数据库客户端支持安全管理
连接数据库失败ssl安全错误
数据库的锁怎样保障安全
软件开发盈利模式分析报告
数据库bit查询
重庆电商软件开发价位
山东中科网络技术研究院
js数据库修改数据类型
数据库是存储在计算机设备中的
网络安全杨娜
贵州广电网络技术
服务器跑CPU指令
江阴自制软件开发资费
外文全文数据库 网站
推送服务器架构
学校招生数据库模型
中国学术期刊全文数据库(知网
服务器公私钥认证机制
split分割数据库
app企业证书软件开发
安全客户端访问服务器
数据库应用方法研究
软件开发公司收入结转
数据库技术应用与发展趋势
塔科夫圣彼得堡是哪个服务器
网络安全和信息化之间的关系
数据库通俗来说是什么
无法连接苹果服务器
网络安全模式没有语言系统了
泰州通用软件开发特点
网络安全网站视频去水印
我的世界游戏服务器多少钱
开展网络安全教育心得