数据结构
数据结构 Java
xiaoxiaoguai666
这个作者很懒,什么都没留下…
展开
-
9. 回文数(简单)
题目描述:判断一个整数是否是回文数。回文数是指正序(从左向右)和倒序(从右向左)读都是一样的整数。 示例: 输入: 121 输出: true 输入: -121 输出: false 解释: 从左向右读, 为 -121 。 从右向左读, 为 121- 。因此它不是一个回文数。 输入: 10 输出: false 解释: 从右向左读, 为 01 。因此它不是一个回文数。 分析: 映入脑海的第一个想法是将数字转换为字符串,并检查字符串是否为回文。但是,这需原创 2020-11-19 10:56:39 · 96 阅读 · 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 · 155 阅读 · 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 · 79 阅读 · 0 评论 -
两数相加
题目描述 给出两个 非空 的链表用来表示两个非负的整数。其中,它们各自的位数是按照 逆序 的方式存储的,并且它们的每个节点只能存储 一位 数字。如果,我们将这两个数相加起来,则会返回一个新的链表来表示它们的和。您可以假设除了数字 0 之外,这两个数都不会以 0 开头。 示例: 输入:(2 -> 4 -> 3) + (5 -> 6 -> 4) 输出:7 -> 0 -> 8 原因:342 + 465 = 807 解原创 2020-11-12 14:21:22 · 77 阅读 · 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 · 88 阅读 · 0 评论