LeetCode
leetcode刷题记录
鑫宇_
村里第一个程序员
展开
-
leetcode 力扣1. 两数之和
首先是无脑暴力解法: 双重循环,注意两次指向的不要是同一元素 public int[] twoSum(int[] nums, int target) { for (int i = 0; i < nums.length; i++) { for (int j = 0; j < nums.length; j++) { if (nums[i] + nums[j] == target && i != j) {原创 2020-11-20 21:51:02 · 114 阅读 · 0 评论 -
leetcode 283题 移动零
public void moveZeroes(int[] nums) { for(int i=0,j=0;i<nums.length;i++){ //定义两个指针,只要数组的元素不是0,j指针随着i指针前进,一旦遇到0,j指针停止,直到i指针遇到不为0的元素,将i指针指向的元素赋给j指针所在位置,并将i指针所在位置置为0,j指针前进一位。 if(nums[i]!=0){ if(j!.原创 2020-11-19 21:55:38 · 106 阅读 · 0 评论 -
leetcode 力扣 第七题 整数反转
基本思想:不断取出原数的最后一位,放到新数字的第一位 如果不考虑内存溢出 直接进行反转 int reverse(int x) { //每次弹出的数字 int pop = 0; //结果 int ans = 0; //这里需要考虑到负数的情况,如果输入的只是整数,在进行取模运算时条件可以写>0 while (x != 0) { pop = x % 10; x /= 10原创 2020-11-17 22:15:49 · 230 阅读 · 1 评论 -
原地删除有序数组中的重复数——leetcode-26
解答: private int removeDuplicates (int[] num) { // 定义慢指针起始位置指向数组第一位 int slowPoint=0; // 快指针正常参与循环 for (int i = 0; i < num.length; i++) { // 循环过程中,当数组中快指针...原创 2020-04-18 18:21:28 · 373 阅读 · 0 评论