- 博客(47)
- 资源 (2)
- 收藏
- 关注
翻译 任务调度-获取最大收益
给一个任务集合,包括任务的名称ID,任务的截止时间deadline,任务的收益profit。设定每个任务的执行时间为一个单位时间,求怎么调度任务,才能获得最大的收益?例如:1.示例1输入: 如下四个任务任务ID Deadline Profit a 4 20 b 1 10 c 1 40 ...
2020-04-30 12:17:26 1302 1
原创 go中validate包使用教程
在go项目中,经常有校验数据合法性的需求,比如邮箱、年龄、车牌号、网址、字符串长度、金额、枚举范围等。一个好的校验包能帮我们少写很多ifelse,提高系统的可维护性。validate包内置了丰富的校验语法,包括字符串、数字、邮箱等,当然如果我们有定制化的校验提示文案或者校验规则,validate也支持定制化校验。官网文档需求描述车身颜色枚举为【黑色、白色、绿色、红色、粉色】,如果输入的车身颜色不在这个范围中,输出校验结果:车身颜色取值必须是黑色、白色、绿色、红色、粉色;思路初始化validate包。
2024-03-26 11:52:53 838
原创 leetcode打卡-字符串II(KMP算法):28. 实现 strStr() 459.重复的子字符串
leetcode打卡-字符串II(KMP算法):28. 实现 strStr() 459.重复的子字符串
2023-02-11 23:40:52 86
原创 leetcode打卡-字符串I:344.反转字符串 541. 反转字符串II 剑指Offer 05.替换空格 151.翻转字符串里的单词 剑指Offer58-II.左旋转字符串
leetcode打卡-字符串I:344.反转字符串 541. 反转字符串II 剑指Offer 05.替换空格 151.翻转字符串里的单词 剑指Offer58-II.左旋转字符串
2023-02-08 23:51:49 65
原创 leetcode打卡-哈希表II:454.四数相加II 383. 赎金信 15. 三数之和 18. 四数之和
leetcode打卡-哈希表II:454.四数相加II 383. 赎金信 15. 三数之和 18. 四数之和
2023-02-08 22:29:20 59
原创 leetcode打卡-哈希表I:242.有效的字母异位词 349. 两个数组的交集 202. 快乐数 1. 两数之和
leetcode打卡-哈希表:242.有效的字母异位词 349. 两个数组的交集 202. 快乐数 1. 两数之和
2023-02-08 16:33:58 75
原创 leetcode打卡-链表:24. 两两交换链表中的节点 19.删除链表的倒数第N个节点 面试题 02.07. 链表相交 142.环形链表II
leetcode打卡-链表:24. 两两交换链表中的节点 19.删除链表的倒数第N个节点 面试题 02.07. 链表相交 142.环形链表II
2023-02-07 22:04:38 108
原创 leetcode打卡-链表基础:203.移除链表元素 707.设计链表 206.反转链表
leetcode打卡-链表基础:203.移除链表元素 707.设计链表 206.反转链表
2023-02-06 17:50:17 53
原创 leetcode打卡-数组基础:977.有序数组的平方 ,209.长度最小的子数组 ,59.螺旋矩阵II
leetcode打卡-数组基础:977.有序数组的平方 ,209.长度最小的子数组 ,59.螺旋矩阵II
2023-02-03 19:05:22 349
原创 搜索旋转排序数组
搜索旋转排序数组解法:二分查找题目描述:整数数组 nums 按升序排列,数组中的值 互不相同 。在传递给函数之前,nums 在预先未知的某个下标 k(0 <= k < nums.length)上进行了 旋转,使数组变为 [nums[k], nums[k+1], …, nums[n-1], nums[0], nums[1], …, nums[k-1]](下标 从 0 开始 计数)。例如, [0,1,2,4,5,6,7] 在下标 3 处经旋转后可能变为 [4,5,6,7,0,1,2] 。给
2021-10-28 23:00:28 102
原创 雪花算法
/** * 雪花算法 * * 生成全局唯一递增ID,共64位。0 -- 00000000 00000000 00000000 00000000 00000000 0 -- 00000 -- 00000 -- 000000000000 * 第一位表示符号,固定为0,41位表示毫秒时间戳,能用69年,5位表示数据中心ID,5位表示机器节点ID,12位表示同一毫秒内的序列号(4095个) * @author fengyurong * @date 2021-10-27 6:03 PM */pub..
2021-10-27 23:52:33 52
原创 java防重复提交AOP
核心逻辑阐述:1.定义注解 NoRepeatSubmit,包含可重复提交时间间隔;使用时标记在controller需要防重复提交的类或者方法上;2.定义AOP切面NoRepeatSubmitAspect切NoRepeatSubmit注解;3.对请求方法query参数和body参数分别做MD5,作为redis中的key;4.如果在redis中找到了就算重复,抛出异常;5.如果未重复,放到redis中并设置下次可提交的时间;注意:为了防止并发出现问题,判断redis是否重复时需要加锁;改进:参
2021-06-06 19:40:25 308
原创 git撤销操作
git由工作目录、索引、版本库组成。代码开发在工作目录中进行,索引是用来记录文件的累积修改,由git add命令进行添加。git add . 将当前工作目录中的累积修改全都添加到索引中。git commit将索引中的修改提交到版本库中。 撤销工作目录的修改 : git checkout file_name 撤销add git reset HEAD file_name 撤销commit git reset --soft HEAD^ ...
2021-05-06 10:59:50 59
原创 Git问题总结
Git问题总结Http和ssh方式克隆方式的区别Http和ssh方式克隆方式的区别http克隆无需配置,但是每次fetch和push需要输入账号密码;ssh传输前会进行压缩,传输安全效率高,需要生成公私钥,配置ssh key,配置步骤如下链接:https://git-scm.com/book/zh/v2/%E6%9C%8D%E5%8A%A1%E5%99%A8%E4%B8%8A%E7%9A%84-Git-%E7%94%9F%E6%88%90-SSH-%E5%85%AC%E9%92%A5...
2021-04-19 11:57:04 46
原创 Java注解总结
@Mapper和@MapperScan二者都是用来声明mybatis的数据库操作接口,有其一就生效。@Mapper直接作用在接口上,表示当前接口为数据库操作接口,@MapperScan需要指定数据库接口扫描的包名,如果未指定包名,则从该注解定义的类所在的包开始扫描(2.0.4以后版本有效)。用法如下:import org.apache.ibatis.annotations.Mapper;@Mapper public interface MVCMybatisDemoUserMapper {
2021-03-03 20:51:36 122 2
转载 mac mysql重置密码
苹果->系统偏好设置->最下边点mysql 在弹出页面中 关闭mysql服务(点击stop mysql server)进入终端输入:cd /usr/local/bin/回车后 登录管理员权限 sudo su (用完后退出 输入exit即可)回车后输入以下命令来禁止mysql验证功能 ./mysqld_safe --skip-grant-tables &回车后mysql会自动重启(偏好设置中mysql的状态会变成running)输入命令 ./mysql..
2020-07-27 11:03:38 92
原创 List<Integer> 和 int[] 的相互转换
1.List<Integer> 转 int[]int[] nums1 = new int[]{1,2,3};List<Integer> list = Arrays.stream(nums1).boxed().collect(Collectors.toList());2.int[] 转 List<Integer> List<Integer> list = Arrays.asList(1,2,3);int[] nums1 = list.stre
2020-07-16 17:27:58 1216 1
原创 Java运算符
1.算数移位(考虑符号):左移 :<< 相当于乘2正数和负数都是移位后补0。比如 1010 左移1位 后是 10100;0010 左移后是 00010;右移:>> 相当于除以2正数移位后补0,负数移位后补1。比如 1010 右移1位 后是 11010;0010 右移后是 0001;2.逻辑移位(不考虑符号):逻辑右移: >>>正数和负数移位后均补0。比如 1010 逻辑右移1位 后是 01010;0010 逻辑右移后是 000...
2020-07-10 15:52:58 101
原创 计算某个时期后工作日
1.思路:<1>. 维持一个特殊的工作日数组(周六、周日工作),一个特殊的休息日数组(周一到周五休息)。<2>. 以24小时(一个工作日)为基本单位,遍历日历,遇到工作日,period 减少24小时,直到period减少为0;<4>. 工作日判断逻辑:周一到周五,如果不是特殊的休息日,为工作日; 周六和周日,如果是特殊的工作日,则为工作日。2.具...
2020-04-27 12:25:07 148
原创 Java输出list为逗号分割的String
1.使用StringJoiner:public static void main(String[] args) { List<Integer> ids = Arrays.asList(12,23,34,32,12,23); StringJoiner content = new StringJoiner(","); ids.forEach...
2019-12-06 11:38:55 1088
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人