算法题
qq_39389646
这个作者很懒,什么都没留下…
展开
-
最长公共前缀
文章目录题目一、方案一二、方案二题目编写一个函数来查找字符串数组中的最长公共前缀。如果不存在公共前缀,返回空字符串 “”。如:[“flower”,“flow”,“flight”]返回 ‘fl’一、方案一public String longestCommonPrefix(String[] strs) { String s = ""; if(strs.length==0) return s; if(strs.length==1) return strs[0]; f原创 2021-01-10 01:36:43 · 198 阅读 · 1 评论 -
罗马数字转整数
文章目录题目提示一、方案一二、方案二题目将罗马数字转整数,罗马数字包含以下七种字符: I, V, X, L,C,D 和 M。提示字符 数值I 1V 5X 10L 50C 100D 500M 1000在較大的羅馬數字的右邊記上較小的羅馬數字,表示大數字加小數字。在較大的羅馬數字的左邊記上較小的羅馬原创 2021-01-08 16:42:18 · 103 阅读 · 0 评论 -
回文数的判断
文章目录题目一、方案一二、方案二三、方案三四、方案四题目判断一个整数是否是回文数。回文数是指正序(从左向右)和倒序(从右向左)读都是一样的整数。提示:下面案例可供参考一、方案一public boolean palindrome(int number) { // 0的回文数是它本身,true if(number == 0) return true; // 负数的回文数有符号,false;个位数为0整数反过来首位为0,不是回文数 if(number<0 || number%10==0原创 2021-01-08 14:45:26 · 4406 阅读 · 3 评论 -
整数反转
文章目录题目一、方案一二、方案二题目给出一个 32 位的有符号整数,你需要将这个整数中每位上的数字进行反转。如果反转后整数溢出那么就返回0.提示:下面解决方式可供参考一、方案一代码如下(示例):public int reserve(int number){ int num = 0; while(number!=0){ //反转后num溢出判断 if(num*10/10 != num) return 0; num = num * 10 + number % 10; numbe原创 2021-01-08 09:38:16 · 152 阅读 · 0 评论 -
数组中重复的数字
数组中重复的数字在一个长度为 n 的数组 nums 中某些数字是重复的,但不知道有几个数字重复了,也不知道每个数字重复了几次。请找出数组中第一个重复的数字。class Solution { public int findRepeatNumber(int[] nums) { // List<Integer> numbers = new ArrayList<Integer>(); // numbers.add(nums[0]);原创 2020-11-25 15:04:26 · 133 阅读 · 0 评论 -
两个栈实现一个队列
两个栈实现一个队列class CQueue { public Stack<Integer> stack1; public Stack<Integer> stack2; public CQueue() { stack1 = new Stack<Integer>(); stack2 = new Stack<Integer>(); } public void appendT原创 2020-11-20 14:44:45 · 119 阅读 · 0 评论 -
斐波那契数列
斐波那契数列写一个函数,输入 n ,求斐波那契(Fibonacci)数列的第 n 项。// 斐波那契数列由 0 和 1 开始,之后的斐波那契数就是由之前的两数相加而得出。public int fib(int n) { if(n == 0) return 0; if(n == 1 || n == 2) return 1; int[] dp = new int[n + 1]; dp[0] = 0; dp[1] = 1;原创 2020-11-20 11:38:41 · 106 阅读 · 0 评论
分享