
java
浮生了大白
保持初心,坚持学习
展开
-
leectcode1. 两数之和 (java)
给定一个整数数组和一个目标值,找出数组中和为目标值的两个数。你可以假设每个输入只对应一种答案,且同样的元素不能被重复利用。示例:给定 nums = [2, 7, 11, 15], target = 9因为 nums[0] + nums[1] = 2 + 7 = 9所以返回 [0, 1] class Solution { public int[] twoSum...原创 2018-08-18 21:16:35 · 261 阅读 · 0 评论 -
冒泡排序,插入排序,选择排序(java)
package ch02;public class BubbleSort { public static void sort(long[] arr) { long temp = 0; for(int i = 0; i < arr.length - 1; i ++) { for (int j = arr.length - 1; j > 0; j --) { ...原创 2018-09-23 10:01:33 · 163 阅读 · 0 评论 -
哈希表(2)开放地址法
package ch16;import java.math.BigInteger;public class HashTable { private Info[] arr; // 默认构造方法 public HashTable() { arr = new Info[10000]; } // 指定数组初始化大小 public HashTable(int maxSiz...原创 2018-09-26 15:13:07 · 427 阅读 · 0 评论 -
哈希表(1)java
package ch15;// 员工信息类 public class Info { private String key; private String name; public Info(String key,String name) { this.key = key; this.name = name; } public String getKey(...原创 2018-09-26 14:16:48 · 243 阅读 · 0 评论 -
快速排序(java)
package ch09;// 快速排序public class QuickSort {// 划分数组 public static void partition(long arr[], int left, int right,int point) { int leftPtr = left - 1; int rightPtr = right - 1; while(t...原创 2018-09-23 12:35:09 · 196 阅读 · 0 评论 -
Leetcode206. 反转链表(java)
反转一个单链表。示例:输入: 1->2->3->4->5->NULL输出: 5->4->3->2->1->NULL进阶:你可以迭代或递归地反转链表。你能否用两种方法解决这道题?/** * Definition for singly-linked list. * public class ListNode { ...原创 2018-08-21 20:47:38 · 494 阅读 · 0 评论 -
leetcode82. 删除排序链表中的重复元素 II(java)
/** * Definition for singly-linked list. * public class ListNode { * int val; * ListNode next; * ListNode(int x) { val = x; } * } */class Solution { public ListNode deleteDupl...原创 2018-08-21 20:15:30 · 1510 阅读 · 0 评论 -
leetcode83. 删除排序链表中的重复元素(java)
/** * Definition for singly-linked list. * public class ListNode { * int val; * ListNode next; * ListNode(int x) { val = x; } * } */class Solution { public ListNode deleteDupl...原创 2018-08-21 19:47:18 · 772 阅读 · 0 评论 -
leetcode237. 删除链表中的节点(java)
/** * Definition for singly-linked list. * public class ListNode { * int val; * ListNode next; * ListNode(int x) { val = x; } * } */class Solution { public void deleteNode(Lis...原创 2018-08-21 19:23:58 · 1004 阅读 · 0 评论 -
leetcode7. 反转整数(java)
class Solution { public int reverse(int x) { long result = 0; while (x != 0){ result = result * 10 + x % 10; x = x / 10; } if (result > ...原创 2018-08-21 19:16:12 · 1165 阅读 · 3 评论 -
leetcode21. 合并两个有序链表(java)
将两个有序链表合并为一个新的有序链表并返回。新链表是通过拼接给定的两个链表的所有节点组成的。 示例:输入:1->2->4, 1->3->4输出:1->1->2->3->4->4/** * Definition for singly-linked list. * public class ListNode { * ...原创 2018-08-20 08:17:29 · 1515 阅读 · 0 评论 -
leetcode.19. 删除链表的倒数第N个节点(java)
给定一个链表,删除链表的倒数第 n 个节点,并且返回链表的头结点。示例:给定一个链表: 1->2->3->4->5, 和 n = 2.当删除了倒数第二个节点后,链表变为 1->2->3->5.说明:给定的 n 保证是有效的。进阶:你能尝试使用一趟扫描实现吗?/** * Definition for singly-li...原创 2018-08-19 22:09:40 · 1978 阅读 · 0 评论 -
leetcode:2. 两数相加(java)
给定两个非空链表来表示两个非负整数。位数按照逆序方式存储,它们的每个节点只存储单个数字。将两数相加返回一个新的链表。你可以假设除了数字 0 之外,这两个数字都不会以零开头。示例:输入:(2 -> 4 -> 3) + (5 -> 6 -> 4)输出:7 -> 0 -> 8原因:342 + 465 = 807 /** * Definit...原创 2018-08-18 22:06:28 · 1350 阅读 · 0 评论 -
leetcode167. 两数之和 II - 输入有序数组 (java)
给定一个已按照升序排列 的有序数组,找到两个数使得它们相加之和等于目标数。函数应该返回这两个下标值 index1 和 index2,其中 index1 必须小于 index2。说明:返回的下标值(index1 和 index2)不是从零开始的。 你可以假设每个输入只对应唯一的答案,而且你不可以重复使用相同的元素。示例:输入: numbers = [2, 7, 11, 15],...原创 2018-08-18 21:36:00 · 456 阅读 · 0 评论 -
希尔排序(java)
package cho8;// 希尔排序public class ShellSort {// 排序方法 public static void sort(long[] arr) {// 初始化间隔 int h = 1; // 计算最大间隔 while(h < arr.length / 3) { h = h * 3 + 1; } while(h...原创 2018-09-23 10:22:30 · 215 阅读 · 0 评论