自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(84)
  • 收藏
  • 关注

原创 我学习算法的心得

今天我想给大家分享一下我学习算法的一些心得,起因是有学弟问我两道题,在给他讲题的时候给他讲了一些我学习或者说研究算法的心得,我觉得可能会对大家有帮助所以想分享给大家。先上题说话吧:第一题:a和n均为1到9中的一个数字,编写程序请输入a和n,求s=a+aa+aaa+···+aaa(n个a)。大部分的同学看到这一道题的思路是,用循环依次生成a,aa,aaa,···,aaa(n个a),然后使...

2018-11-02 21:24:36 7984

原创 nodejs批量执行脚本实践

nodejs批量执行脚本实践在开发过程中往往需要执行一系列脚本,例如数据库脚本,测试脚本,使用nodejs可以很方便的找到脚本并执行,下面以eggjs的测试脚本为例进行展示。代码constfs=require('fs');constpath=require('path');constprocess=require('child_process');consttargetPathController=path.resolve('../test/app/co...

2021-09-13 10:32:40 820

原创 nodejs模拟tail -f的命令

需求tail-f的命令效果为挂起一个服务监控一个文件,当文件结尾内容输出,并当文件有新内容后追加输出。分析监控文件可以用fs.watchFile实现,fs.watchFile会挂起一个服务,监视文件的变化。每次访问文件时都会调用回调该方法的listener,下面是官方文档的例子:import{watchFile}from'fs';watchFile('message.text',(curr,prev)=>{console.log(`thecurre...

2021-09-13 10:30:46 433

原创 nodejs集成serialport+ws(WebSocket)实现扫描枪串口读取显示至前端页面

背景介绍要做一个项目,其中一个需求是扫描枪扫描二维码得到一个字符串,该字符串需要用到后端的数据查询也要同时显示到前端的文本框内,因为项目需要运行在arm架构的Linux系统上,所以市面上的扫码枪并没有直接驱动,所以需要使用串口进行通许。基本上翻遍了网上所有的博客,参考了一些,但得到但帮助不是很大,只好硬着头皮对着官方文档硬写,最后终于完成了demo,分享给后来者参考。项目结构...

2021-01-22 15:25:11 2160

原创 springboot集成spring data jpa使用CrudRepository中的api(gradle)

版本环境java:jdk-14.0.1springboot:v2.3.4.RELEASEgradle:gradle-6.7-rc-4IntelliJ IDEA:2020.1.2spring-boot-starter-data-jpa:v2.3.4.RELEASE实体类@NoArgsConstructor@ApiModel(value = "用户实体", description = "用户实体类")@Data@Table(name = "user")@Entitypublic cla

2020-10-21 14:36:56 381

原创 springboot集成spring data jpa使用JpaRepository中的api分页与排序(gradle)

版本环境java:jdk-14.0.1springboot:v2.3.4.RELEASEgradle:gradle-6.7-rc-4IntelliJ IDEA:2020.1.2spring-boot-starter-data-jpa:v2.3.4.RELEASE实体类@NoArgsConstructor@ApiModel(value = "用户实体", description = "用户实体类")@Data@Table(name = "user")@Entitypublic cla

2020-10-21 14:35:29 305

原创 springboot集成spring data jpa使用排序查询(gradle)

排序JpaRepository中的api/* * (non-Javadoc) * @see org.springframework.data.repository.PagingAndSortingRepository#findAll(org.springframework.data.domain.Sort) */@OverrideList<T> findAll(Sort sort);注:若findAll不填参数,可调用List findAll(); 返回结果为数据表中的所有数据

2020-10-20 19:21:30 559

原创 springboot集成spring data jpa使用分页查询(gradle)

分页查询service在UserService中添加下面的方法Page<User> find(Integer page, Integer size);并在UserServiceImpl中进行实现@AutowiredUserRepository userRepository;@Overridepublic Page<User> find(Integer page, Integer size) { PageRequest pageable = PageReque

2020-10-20 19:20:29 249

原创 springboot集成spring data jpa使用原生sql实现增删改查(gradle)

JPASpring Data JPA 是 spring data 项目下的一个模块。提供了一套基于 JPA标准操作数据库的简化方案。底层默认的是依赖 Hibernate JPA 来实现的。JPA的出现主要是为了简化持久层开发以及整合ORM技术,结束Hibernate、TopLink、JDO等ORM框架各自为营的局面。JPA是在吸收现有ORM框架的基础上发展而来,易于使用,伸缩性强。总的来说,JPA包括以下3方面的技术:ORM映射元数据: 支持XML和注解两种元数据的形式,元数据描述对象和表之间的映射

2020-10-20 19:18:24 2356

原创 MybatisPlus二级缓存配置redis(gradle)

MybatisPlus二级缓存配置redis版本环境IntelliJ IDEA:2020.1.2java:jdk-14.0.1springboot:v2.3.4.RELEASEgradle:gradle-6.7-rc-4Redis server v=6.0.5springfox(swagger):version: '3.0.0'swagger-bootstrap-ui:version: '1.9.6'mysql-connector-java:version: '8.0.16'mybati

2020-10-20 19:14:51 377

原创 SpringBoot-2.3.4集成MybatisPlus-3.4.0(gradle)

SpringBoot-2.3.4集成MybatisPlus-3.4.0MybatisPlus官方文档版本环境IntelliJ IDEA:2020.1.2java:jdk-14.0.1springboot:v2.3.4.RELEASEgradle:gradle-6.7-rc-4springfox(swagger):version: '3.0.0'swagger-bootstrap-ui:version: '1.9.6'mysql-connector-java:version: '8.0.16

2020-10-20 19:13:50 455 1

原创 mac安装配置gradle

GradleGradle是一个基于Apache Ant和Apache Maven概念的项目自动化构建开源工具。它使用一种基于Groovy的特定领域语言(DSL)来声明项目设置,目前也增加了基于Kotlin语言的kotlin-based DSL,抛弃了基于XML的各种繁琐配置。官方文档(6.6.1)文档地址:点击查看gradle文档Gradle 下载与配置下载Gradle下载地址:点击下载gradle下载all版本的,里面包含了Gradle SDK 所有相关的内容,包括源代码、文档、示例等.配

2020-10-20 19:01:14 845

原创 SpringBoot-2.3.4集成Swagger3(gradle)

版本环境java:jdk-14.0.1springboot:v2.3.4.RELEASEgradle:gradle-6.7-rc-4springfox(swagger):version: '3.0.0'swagger-bootstrap-ui:version: '1.9.6'IntelliJ IDEA:2020.1.2swagger的配置前后端分离的项目,接口文档的存在十分重要。与手动编写接口文档不同,swagger是一个自动生成接口文档的工具,在需求不断变更的开发环境下,手动编写文档的效

2020-10-20 18:58:41 1413

原创 算法练习(48) leetcode 41. 缺失的第一个正数

https://leetcode-cn.com/problems/first-missing-positive/class Solution { public int firstMissingPositive(int[] nums) { if(nums.length==0){return 1;}; for (int i = 0; i < nums.length; i++) { if (nums[i] <= 0) {

2020-09-25 11:07:58 85

原创 算法练习(47) leetcode 125. 验证回文串

https://leetcode-cn.com/problems/valid-palindrome/class Solution { public boolean isPalindrome(String s) { for (int i=0;i<s.length();i++){ if (!iscode(s.charAt(i))){ s=s.replace(Character.toString(s.charAt(i)),

2020-09-15 15:09:12 67

原创 算法练习(46) leetcode 205. 同构字符串

https://leetcode-cn.com/problems/isomorphic-strings/class Solution { public boolean isIsomorphic(String s, String t) { if (test(s,t)&&test(t,s)){ return true; } else { return false; } }

2020-09-11 17:27:59 89

原创 算法练习(45) leetcode 203. 移除链表元素

https://leetcode-cn.com/problems/remove-linked-list-elements//** * Definition for singly-linked list. * public class ListNode { * int val; * ListNode next; * ListNode(int x) { val = x; } * } */class Solution { public ListNode rem

2020-09-11 15:02:30 122

原创 算法练习(44) leetcode 202. 快乐数(HashMap)

https://leetcode-cn.com/problems/happy-number/class Solution { public boolean isHappy(int n) { Map<Integer,Integer> map=new HashMap<>(); while (next(n)!=1){ if (map.get(next(n))!=null){ return

2020-09-11 14:17:15 74

原创 算法练习(43) leetcode 204. 计数质数

https://leetcode-cn.com/problems/count-primes/class Solution { public int countPrimes(int n) { if (n<=2){ return 0; } List<Integer> list=new ArrayList<Integer>(); list.add(2); for (

2020-09-11 11:32:34 82

原创 算法练习(42) leetcode 216. 组合总和 III (复用算法练习(33) leetcode 77代码)

https://leetcode-cn.com/problems/combination-sum-iii/class Solution { public List<List<Integer>> combinationSum3(int k, int n) { List<List<Integer>> unans=combine(9,k); List<List<Integer>> ans=new

2020-09-11 10:23:44 83

原创 算法练习(41) leetcode 141. 环形链表(快慢指针)

https://leetcode-cn.com/problems/linked-list-cycle/public class Solution { public boolean hasCycle(ListNode head) { if (head == null || head.next == null) { return false; } ListNode step1=head,step2=step1.next; while

2020-09-10 17:23:20 70

原创 算法练习(40) leetcode 82. 删除排序链表中的重复元素 II

https://leetcode-cn.com/problems/remove-duplicates-from-sorted-list-ii/class Solution { public ListNode deleteDuplicates(ListNode head) { boolean flag=true; ListNode ans=head,before=null; if (head==null||head.next==null){

2020-09-10 15:32:38 76

原创 算法练习(39) leetcode 83. 删除排序链表中的重复元素

https://leetcode-cn.com/problems/remove-duplicates-from-sorted-list//** * Definition for singly-linked list. * public class ListNode { * int val; * ListNode next; * ListNode(int x) { val = x; } * } */class Solution { public ListN

2020-09-09 17:04:22 70

原创 算法练习(38) leetcode 137. 只出现一次的数字 II(排序找规律法)

https://leetcode-cn.com/problems/single-number-ii/class Solution { public int singleNumber(int[] nums) { if(nums.length==1){ return nums[0]; } Arrays.sort(nums); if (nums[0]!=nums[1]){ return n

2020-09-08 16:16:53 92

原创 算法练习(37) leetcode 136. 只出现一次的数字(HashMap)

https://leetcode-cn.com/problems/single-number/class Solution { public int singleNumber(int[] nums) { Map<Integer,Integer> map=new HashMap<>(); for (int num : nums) { if (map.containsKey(num)){

2020-09-08 16:01:54 68

原创 算法练习(36) leetcode 461. 汉明距离

https://leetcode-cn.com/problems/hamming-distance/class Solution { public int hammingDistance(int x, int y) { String stringx=reverse(Integer.toBinaryString(x)); String stringy=reverse(Integer.toBinaryString(y)); int ans=0,min

2020-09-08 15:30:09 74

原创 算法练习(35) leetcode 88. 合并两个有序数组

https://leetcode-cn.com/problems/merge-sorted-array/class Solution { public void merge(int[] nums1, int m, int[] nums2, int n) { int[] trannums1=new int[m]; for (int i=0;i<m;i++){ trannums1[i]=nums1[i]; }

2020-09-08 14:43:19 80

原创 算法练习(34) leetcode 73. 矩阵置零 (空间O(m+n))

https://leetcode-cn.com/problems/set-matrix-zeroes/class Solution { public void setZeroes(int[][] matrix) { boolean[] x=new boolean[matrix[0].length]; boolean[] y=new boolean[matrix.length]; for(int i=0;i<y.length;i++){

2020-09-08 14:02:38 86

原创 算法练习(33) leetcode 77. 组合 (二进制数模拟组合、替换法统计字符串某字符在字符串出现次数、字符串反转)

https://leetcode-cn.com/problems/combinations/class Solution { public static void main(String[] args) { new Solution().combine(3,1); } public List<List<Integer>> combine(int n, int k) { List<List<Integer>

2020-09-08 10:43:31 152

原创 算法练习(32) leetcode 53. 最大子序和 (dp动态规划)

https://leetcode-cn.com/problems/maximum-subarray/class Solution { public int maxSubArray(int[] nums) { int[] dp=new int[nums.length]; dp[0]=nums[0]; for (int i=1;i<dp.length;i++){ if (dp[i-1]+nums[i]>nums[i])

2020-09-07 16:03:39 76

原创 算法练习(31) leetcode 55. 跳跃游戏 (贪心算法)

https://leetcode-cn.com/problems/jump-game/class Solution { public boolean canJump(int[] nums) { if (nums.length==1){ return true; } if(nums[0]==0){ return false; } int max=nums[0];

2020-09-07 15:32:36 115

原创 算法练习(30) leetcode 6. Z 字形变换

https://leetcode-cn.com/problems/zigzag-conversion/class Solution { public String convert(String s, int numRows) { if (numRows<=1) { return s; } String[] strings=new String[numRows]; for (int i=0;i<n

2020-09-07 13:49:56 69

原创 算法练习(29) leetcode 5. 最长回文子串 (中心扩散、字符串处理)

https://leetcode-cn.com/problems/longest-palindromic-substring/class Solution {public String longestPalindrome(String s) { String string="#"; int max=1,c = 0,l=0; for(int i=0;i<s.length();i++) { string=string+Cha

2020-09-07 11:23:45 72

原创 算法练习(28) leetcode 347. 前 K 个高频元素 (HashMap按值排序返回key)

https://leetcode-cn.com/problems/top-k-frequent-elements/class Solution { public static void main(String[] args) { new Solution().topKFrequent(new int[]{1, 1, 1, 2, 2, 3},1); } public int[] topKFrequent(int[] nums, int k) { M

2020-09-07 10:16:09 116

原创 算法练习(27) leetcode 50. Pow(x, n)

https://leetcode-cn.com/problems/powx-n/class Solution { public double erfen(double x, long N) { if (N == 0) { return 1.0; } double y = erfen(x, N / 2); return N % 2 == 0 ? y * y : y * y * x; } pu

2020-09-04 14:16:11 93

原创 算法练习(26) leetcode 58. 最后一个单词的长度

https://leetcode-cn.com/problems/length-of-last-word/class Solution { public int lengthOfLastWord(String s) { if(s.length()==0){ return 0; } if (s.length()-1==s.indexOf(' ')){ return s.length()-1;

2020-09-04 14:02:47 58

原创 算法练习(25) leetcode 70. 爬楼梯

https://leetcode-cn.com/problems/climbing-stairs/class Solution {public int climbStairs(int n) { int x=1,y=2,t=0; if (n==1){ return 1; } if (n==2){ return 2; } for (int i=2;i<n;

2020-09-04 13:23:14 74

原创 算法练习(24) leetcode 38. 外观数列

https://leetcode-cn.com/problems/count-and-say/class Solution { public String countAndSay(int n) { if (n==1){ return "1"; } String string="1"; for(int i=1;i<n;i++){ string=say(string);

2020-09-04 09:54:54 78

原创 算法练习(23) leetcode 26. 删除排序数组中的重复项

https://leetcode-cn.com/problems/remove-duplicates-from-sorted-array/class Solution { public int removeDuplicates(int[] nums) { if(nums.length==0) { return 0; } int num=nums[0],location=1; for (int i=1;i&

2020-09-03 17:31:19 66

原创 算法练习(22) leetcode 28.实现strStr()

https://leetcode-cn.com/problems/implement-strstr/class Solution { public int strStr(String haystack, String needle) { if (needle.equals("") || needle==null||needle.equals(haystack)) { return 0 ; } boolean flag=false

2020-09-03 16:52:52 68

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除