Java经典算法题有哪些

这篇文章主要介绍“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

题目三:

Java经典算法题有哪些

//字符数组组成的所有字符串         @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

题目四:

Java经典算法题有哪些

//数组组成的最小数         @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;         }     }

题目五:

Java经典算法题有哪些

//子数组***和     @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;     }

题目六:

Java经典算法题有哪些

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 Stack minStack = 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

题目七:

Java经典算法题有哪些

//找出数组中出现次数大于一半的数         @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

题目八:

Java经典算法题有哪些

//判断一个数组是否是另一个栈的出栈顺序         @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};         Stack s1 = 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

题目九:

Java经典算法题有哪些

//从扑克牌抽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

题目十:

Java经典算法题有哪些

//输出第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经典算法题有哪些”的学习就结束了,希望能够解决大家的疑惑。理论与实践的搭配能更好的帮助大家学习,快去试试吧!若想继续学习更多相关知识,请继续关注创新互联网站,小编会继续努力为大家带来更多实用的文章!


当前名称:Java经典算法题有哪些
当前URL:http://pwwzsj.com/article/pgsjed.html