数据结构
数据结构 Java
xiaoxiaoguai666
这个作者很懒,什么都没留下…
展开
-
9. 回文数(简单)
题目描述:判断一个整数是否是回文数。回文数是指正序(从左向右)和倒序(从右向左)读都是一样的整数。示例:输入: 121输出: true输入: -121输出: false解释: 从左向右读, 为 -121 。 从右向左读, 为 121- 。因此它不是一个回文数。输入: 10输出: false解释: 从右向左读, 为 01 。因此它不是一个回文数。分析: 映入脑海的第一个想法是将数字转换为字符串,并检查字符串是否为回文。但是,这需原创 2020-11-19 10:56:39 · 69 阅读 · 0 评论 -
7. 整数反转(简单)
题目描述:给出一个 32 位的有符号整数,你需要将这个整数中每位上的数字进行反转。示例 :输入: 123输出: 321输入: -123输出: -321输入: 120输出: 21分析:我们可以一次构建反转整数的一位数字。在这样做的时候,我们可以预先检查向原整数附加另一位数字是否会导致溢出。如果构建出来的整数大于Integer.MAX_VALUE或者小于Integer.MIN_VALUE则直接返回0。代码:public int reverse(int x) { int n = 0原创 2020-11-19 10:21:26 · 109 阅读 · 0 评论 -
328. 奇偶链表
给定一个单链表,把所有的奇数节点和偶数节点分别排在一起。请注意,这里的奇数节点和偶数节点指的是节点编号的奇偶性,而不是节点的值的奇偶性。请尝试使用原地算法完成。你的算法的空间复杂度应为 O(1),时间复杂度应为 O(nodes),nodes 为节点总数。示例 1:输入: 1->2->3->4->5->NULL输出: 1->3->5->2->4->NULL解析:public ListNode oddEvenList1(ListNode原创 2020-11-13 10:05:00 · 54 阅读 · 0 评论 -
两数相加
题目描述 给出两个 非空 的链表用来表示两个非负的整数。其中,它们各自的位数是按照 逆序 的方式存储的,并且它们的每个节点只能存储 一位 数字。如果,我们将这两个数相加起来,则会返回一个新的链表来表示它们的和。您可以假设除了数字 0 之外,这两个数都不会以 0 开头。示例:输入:(2 -> 4 -> 3) + (5 -> 6 -> 4)输出:7 -> 0 -> 8原因:342 + 465 = 807解原创 2020-11-12 14:21:22 · 55 阅读 · 0 评论 -
两数之和
一、问题描述 给定一个整数数组 nums 和一个目标值 target,请你在该数组中找出和为目标值的那 两个 整数,并返回他们的数组下标。你可以假设每种输入只会对应一个答案。但是,你不能重复利用这个数组中同样的元素。二、解决方法(1)暴力解决//双重循环 循环极限为(n^2-n)/2 public static int[] twoSum(int[] nums, int target) { int[] result = new int[原创 2020-11-12 11:36:16 · 65 阅读 · 0 评论