随笔分类 - 算法和数据结构
摘要:package main import ( "fmt" "os" ) func createMaze(filename string) [][]int { file, err := os.Open(filename) if err != nil { fmt.Println("文件打开错误", err
阅读全文
摘要:1 /** 2 * @param arr 给定一个字符串集合 3 * @return 返回字符串中不包含重复字符的字符串集合 4 */ 5 public List<String> findStr(List<String> arr) { 6 List<String> ans = new ArrayLi
阅读全文
摘要:/** * 二维数组实现 图的邻接矩阵 */ public class DenseGraph { private int n; //图的节点 private int m; //图的边 private boolean directed; //是否为有向图或无向图 private int[][] arr
阅读全文
摘要:/** * https://leetcode-cn.com/problems/remove-linked-list-elements/ * 删除链表中等于给定值 val 的所有节点。 * * 输入: 1->2->6->3->4->5->6, val = 6 * 输出: 1->2->3->4->5 *
阅读全文
摘要:import java.util.ArrayList;import java.util.Arrays;import java.util.List;/** * 给定一个包含 n 个整数的数组 nums 和一个目标值 target, * 判断 nums 中是否存在四个元素 a,b,c 和 d , * 使
阅读全文
摘要:import java.util.ArrayList;import java.util.Arrays;import java.util.List;/** * * 给你一个包含 n 个整数的数组 nums,判断 nums 中是否存在三个元素 a,b,c , * 使得 a + b + c = 0 ?请你
阅读全文
摘要:public class TwoSum1 { /** * 暴力求解的方式 * @param nums * @param target * @return */ public int[] twoSum3(int[] nums, int target){ for(int i = 0; i < nums.
阅读全文
摘要:/** * 滑动窗口 * @param s * @return */public int lengthOfLongestSubString(String s){ //定义左右边界 int l = 0, r = -1; //[l...r] 此为滑动窗口,初始为空 int res = Integer.M
阅读全文
摘要:public void sortColors(int[] nums){ int zero = -1; int two = nums.length; for(int i = 0; i < two; ){ if(nums[i] == 1){ i ++; }else if(nums[i] == 2){ t
阅读全文
摘要:/** * 双指针的简单思路解法 * @param s * @return */public String reverserString1(String s){ //将字符串 s 变成 字符数组 char[] c = s.toCharArray(); //定义左右指针 int left = 0; i
阅读全文
摘要:0 1 1 2 3 5 8 11 19 30 49 > 斐波拉契数列 //非递归实现public int fib(int n) { if(n == 0) return 0; if(n == 1) return 1; int a = 0; int b = 1; int ret = 0; while (
阅读全文
摘要:解法一:使用jdk中的api方法 class Solution { public int getSum(int a, int b) { return Math.addExact(a,b); } } 解法二:位运算 class Solution { public int getSum(int a, i
阅读全文

浙公网安备 33010602011771号