当前位置: 首页 > news >正文

高校思政教育工作网站建设高端网页设计公司

高校思政教育工作网站建设,高端网页设计公司,海口网红,现在手机网站用什么做的好简单版1. 两数求和2. 回文数3. 将整数倒转4. 罗马转整数1. 两数求和 我用的暴力求和。 package top.bitqian.easy.two_sum;import java.util.Arrays; import java.util.LinkedHashMap; import java.util.Map;/*** 给定一个整数数组 nums 和一个整数目标值 target#xff0c;… 简单版1. 两数求和2. 回文数3. 将整数倒转4. 罗马转整数1. 两数求和 我用的暴力求和。 package top.bitqian.easy.two_sum;import java.util.Arrays; import java.util.LinkedHashMap; import java.util.Map;/*** 给定一个整数数组 nums 和一个整数目标值 target请你在该数组中找出 和为目标值 的那 两个 整数并返回它们的数组下标。* p* 你可以假设每种输入只会对应一个答案。但是数组中同一个元素不能使用两遍。* p* 你可以按任意顺序返回答案。** author echo lovely* date 2021/3/8 16:45*/public class DemoSum {/**输入nums [2,7,11,15], target 9输出[0,1]解释因为 nums[0] nums[1] 9 返回 [0, 1] 。** */static int[] twoSum(int[] nums, int target) {int len nums.length;for (int i 0; i len; i) {int curVal nums[i];// tips: 可以从 i 1开始的for (int j 0; j len; j) {boolean b curVal nums[j] target i ! j;if (b) {return new int[]{i, j};}}}return new int[0];}public static int[] upgrade(int[] nums, int target) {MapInteger, Integer hashtable new LinkedHashMap();for (int i 0; i nums.length; i) {if (hashtable.containsKey(target - nums[i])) {return new int[]{hashtable.get(target - nums[i]), i};}hashtable.put(nums[i], i);}return new int[0];}public static void main(String[] args) {int[] sum twoSum(new int[]{2, 3, 10, 9, 7}, 19);System.out.println(Arrays.toString(sum));sum twoSum(new int[]{3, 2, 4}, 6);System.out.println(Arrays.toString(sum));sum upgrade(new int[]{2, 3, 10, 9, 7}, 12);System.out.println(Arrays.toString(sum));System.out.println(\n);sum new int[]{1, 2, 3, 4};for (int i 0; i sum.length; i) {System.out.println(i);}}}2. 回文数 针对于数字xxxx, 正序和反序都是一样的称之为回文数。 使用数据结构栈解题栈是先进后去可以弹出来得到相反的数字符串比较就行了。 package top.bitqian.easy.palindrome;import java.util.Stack;/*** author echo lovely* date 2021/11/8 14:52* description 回文数* https://leetcode-cn.com/problems/palindrome-number/*/public class Palindrome {public static void main(String[] args) {boolean b isPalindrome(19091);System.out.println(b);System.out.println(upgrade(0));}// 使用栈解题public static boolean isPalindrome(int x) {if (x 0) {return false;}String str String.valueOf(x);StackString stack new Stack();for (String s : str.split()) {stack.push(s);}String newStr ;for (int i stack.size() - 1; i 0; i--) {newStr newStr.concat(stack.pop());}return newStr.equals(str);}/*** https://leetcode-cn.com/problems/palindrome-number/solution/hui-wen-shu-by-leetcode-solution/*/public static boolean upgrade(int x) {// 特殊情况// 如上所述当 x 0 时x 不是回文数。// 同样地如果数字的最后一位是 0为了使该数字为回文// 则其第一位数字也应该是 0// 只有 0 满足这一属性if (x 0 || (x % 10 0 x ! 0)) {return false;}int revertedNumber 0;while (x revertedNumber) {revertedNumber revertedNumber * 10 x % 10;x / 10;}// 当数字长度为奇数时我们可以通过 revertedNumber/10 去除处于中位的数字。// 例如当输入为 12321 时在 while 循环的末尾我们可以得到 x 12revertedNumber 123// 由于处于中位的数字不影响回文它总是与自己相等所以我们可以简单地将其去除。return x revertedNumber || x revertedNumber / 10;}}3. 将整数倒转 注意整数有最大值和最小值!!!, 越界报错用Long比较。 这里也是利用栈解决。 package top.bitqian.easy.reverse_integer;import java.util.Stack;/*** author echo lovely* date 2021/11/8 11:36* description 两数反转* https://leetcode-cn.com/problems/reverse-integer/* 1. Integer.MIN_VALUE的绝对值不靠谱* 2. Integer.parseInt(9646324351) 转换过大数字, 可能出现异常*/public class ReverseInteger {public static void main(String[] args) {// the min value of integer, if you get a abs, its will be a negative num..int val -2147483648;int res reverse(1534236469);System.out.println(res);// 结果是负数..System.out.println(-val);System.out.println(Math.abs((long) val));res upgrade(val);System.out.println(res);}// 使用栈进行反转public static int reverse(int x) {if (x 0)return x;if (x Integer.MIN_VALUE || x Integer.MAX_VALUE) {return 0;}String s String.valueOf(Math.abs(x));StackString stack new Stack();for (String ele : s.split()) {stack.push(ele);}s ;for (int i stack.size() - 1; i 0; i--) {s s.concat(stack.pop());}// 关于证数转换问题, 如果数字超出整数范围, 会报转换错误异常。// Integer.valueOf(9646324351);// Exception in thread main java.lang.NumberFormatException: For input string: 9646324351long tmp Long.parseLong(s);boolean flag tmp Integer.MAX_VALUE || tmp Integer.MIN_VALUE;if (flag) {return 0;}if (x 0) {x Integer.parseInt(s);return x;}x Integer.parseInt(s);return -x;}/*** https://leetcode-cn.com/problems/reverse-integer/solution/zheng-shu-fan-zhuan-by-leetcode-solution-bccn/*/public static int upgrade(int x) {int rev 0;while (x ! 0) {if (rev Integer.MIN_VALUE / 10 || rev Integer.MAX_VALUE / 10) {return 0;}int digit x % 10;x / 10;rev rev * 10 digit;}return rev;}}4. 罗马转整数 利用字典map存储罗马和数字一一对应。求出特殊的罗马数字组合比如IV, 要用减法, IV是4求加法的罗马数字VI就是6 package top.bitqian.easy.roman_to_integer;import java.util.HashMap; import java.util.Map;/*** author echo lovely* date 2021/11/8 15:07* description https://leetcode-cn.com/problems/roman-to-integer/*/public class RomanToInteger {public static void main(String[] args) {System.out.println(romanToInt(IV));System.out.println(upgrade(XIV));/*I 1V 5X 10L 50C 100D 500M 1000rules:I 可以放在 V (5) 和 X (10) 的左边来表示 4 和 9。X 可以放在 L (50) 和 C (100) 的左边来表示 40 和 90。 C 可以放在 D (500) 和 M (1000) 的左边来表示 400 和 900。*/}static MapString, Integer paramMap new HashMap();static {paramMap.put(I, 1);paramMap.put(V, 5);paramMap.put(X, 10);paramMap.put(L, 50);paramMap.put(C, 100);paramMap.put(D, 500);paramMap.put(M, 1000);}public static int romanToInt(String s) {int res 0;String[] specArr new String[]{IV, IX, XL, XC, CD, CM};// 1. 计算指定的字符for (String ele : specArr) {if (s.contains(ele)) {res getVal(ele);s s.replace(ele, );}}// 2. 计算正常相加的字符for (String ele : s.split()) {// IV, 防止s是if (.equals(ele))return res;Integer val paramMap.get(ele);res val;}return res;}private static int getVal(String ele) {int val 0;String[] node ele.split();for (String tmp : node) {Integer i paramMap.getOrDefault(tmp, 0);val Math.abs(val - i);}return val;}/*https://leetcode-cn.com/problems/roman-to-integer/solution/luo-ma-shu-zi-zhuan-zheng-shu-by-leetcod-w55p/*/public static int upgrade(String s) {int ans 0;int n s.length();for (int i 0; i n; i) {int value symbolValues.get(s.charAt(i));if (i n - 1 value symbolValues.get(s.charAt(i 1))) {ans - value;} else {ans value;}}return ans;}static MapCharacter, Integer symbolValues new HashMapCharacter, Integer() {private static final long serialVersionUID 4834716094584504863L;{put(I, 1);put(V, 5);put(X, 10);put(L, 50);put(C, 100);put(D, 500);put(M, 1000);}};}
http://www.zqtcl.cn/news/837155/

相关文章:

  • 潜江 网站建设扬中话
  • 网站建设项目方案ppt广州建站模板平台
  • 房产部门成立网站免费seo推广软件
  • python做网站好处百度指数分析报告
  • 网站建设挣钱班级介绍网页制作模板
  • 工作室 网站建设app公司
  • 自己做的网站怎么在百度搜索到网页制作论文3000字
  • 如何网站托管中国跨境电商平台有多少
  • 手机p2p网站做平面设计兼职的网站有哪些
  • 贵金属网站建设唐山网站制作工具
  • 网站入门成都网站制作沈阳
  • 接做网站单子的网站做网站要会那些ps
  • 做盗市相关网站wordpress速度优化简书
  • 贵阳手机网站建设公司国内永久免费云服务器
  • 温州做网站定制哪家网络推广公司好
  • 招聘网站怎么做线下活动网站后台管理系统怎么开发
  • 西湖区外贸网站建设商梦建站
  • 网站首页设计注意斗蟋蟀网站建设
  • 石家庄网站建设远策科技网站建设公司人员配备
  • 手机怎么建网站链接专门做鞋子的网站吗
  • 网站建设设计作品怎么写网站建设 网站内容 采集
  • 自己做网站nas如何做网站大图片
  • 网站优化定做嘉兴模板建站代理
  • 南宁做网站比较好的公司有哪些花乡科技园区网站建设
  • 网站注册平台怎么注册申请空间 建立网站吗
  • 汕头住房与城乡建设网站做网站视频 上传到哪儿
  • 东莞网站关键词优化福建个人网站备案
  • 国外获奖flash网站泉州网站制作专业
  • 万网域名注册后如何做网站教学上海app开发和制作公司
  • 恩施网站建设公司个人网站怎么制作成图片