CandyDingDing
码龄6年
  • 68,317
    被访问
  • 27
    原创
  • 68,735
    排名
  • 82
    粉丝
关注
提问 私信

个人简介:985机械硕士转码(后端开发),22届校招拿到快手、美团、度小满、新浪、东方财富的offer,喜欢Java、Python、C++以及数据结构与算法,前端JS、VUE也喜欢玩,没事捣鼓各种组件,在这里分享自己的学习笔记,请多指教!

  • 毕业院校: 大连理工大学
  • 目前就职: 快手科技有限公司
  • 加入CSDN时间: 2016-03-17
博客简介:

且视他人之疑目如盏盏鬼火,大胆走吾之夜路!

博客描述:
转码一路不易,总是被身边的琐事烦扰,曾受尽冷眼和嘲讽,也曾被面试和算法折磨到头痛欲裂,历经磨难两载,终于涅槃上岸,在此分享自己的学习心得、面试经验、学习笔记,希望能帮助到有缘人。
查看详细资料
  • 1
    领奖
    总分 93 当月 5
个人成就
  • 获得122次点赞
  • 内容获得3次评论
  • 获得417次收藏
创作历程
  • 26篇
    2022年
  • 1篇
    2021年
成就勋章
TA的专栏
  • 设计模式
    1篇
  • 学习笔记导航
    1篇
  • 学习经验分享
    1篇
  • NC刷题笔记
    14篇
  • Git
    1篇
  • Linux
    2篇
  • 算法
    1篇
  • 优化算法
    1篇
  • 分布式数据库系统
    1篇
  • 图数据库
    1篇
  • CSDN
    1篇
  • RPC
    2篇
兴趣领域 设置
  • 后端
    后端架构分布式
  • 最近
  • 文章
  • 资源
  • 问答
  • 帖子
  • 视频
  • 课程
  • 关注/订阅/互动
  • 收藏
搜TA的内容
搜索 取消

最全23种设计模式详解(一)

一、UML1.1 UML的定义UML:统一建模语言(Unified Modeling Language,UML)是一种为面向对象系统的产品进行说明、可视化和编制文档的一种标准语言,是非专利的第三代建模和规约语言。UML是面向对象设计的建模工具,独立于任何具体程序设计语言。1.2 UML的作用(1)为软件系统建立可视化模型。UML符号具有良好的语义,不会引起歧义;基于UML的可视化模型,使系统结构直观、易于理解;使用UML进行软件系统的模型不但有利于系统开发人员和系统用户的交流,还有利于.
原创
发布博客 2022.04.09 ·
563 阅读 ·
1 点赞 ·
0 评论

机械转码学习路线及经验分享

机械转码学习路线及经验分享一、前言1.1 自我介绍1.2 转码原因二、学习路线2.1 转码历程(踩坑历程)2.1.1 未入学阶段2.1.2 研一阶段2.1.3 研二阶段2.1.4 研三阶段2.2 学习路线2.2.1 Java部分2.2.2 书籍推荐2.2.3 算法2.2.4 面经2.2.5 项目2.2.6 简历三、总结本博客其他文章(学习笔记)导航一、前言1.1 自我介绍大家好,我是CandyDing(N2是我的博客名字),985机械硕士转码( 后端开发 ),22届校招拿到快手、度小满
原创
发布博客 2022.04.06 ·
1767 阅读 ·
3 点赞 ·
0 评论

本博客文章(学习笔记)导航

本博客文章(学习笔记)导航一、学习经验笔记1.1 非科班转码学习路线及经验分享二、算法笔记2.1 牛客Top100学习笔记2.2 牛客刷题笔记三、Git笔记3.1 Git学习笔记四、RPC笔记4.1 GRPC学习笔记4.2 RPC手写实现笔记五、优化算法笔记5.1 优化算法学习笔记六、Linux笔记6.1 Linux学习笔记6.2发布项目的方式学习Linux七、图数据库笔记7.1 Neo4j学习笔记八、期末考试笔记8.1 大工分布式数据库系统期末重点一、学习经验笔记1.1 非科班转码学习路线及经验分享
原创
发布博客 2022.04.05 ·
224 阅读 ·
0 点赞 ·
0 评论

GRpc学习笔记

GRpc学习笔记一、新建maven项目二、导入pom依赖三、写profo文件3.1 新建proto的存放位置3.2 新建add.proto文件3.3 protobuf maven插件下载3.4 编写proto文件3.5 编译proto文件3.6 服务方法四、服务代码编写4.1 Server服务4.2 Clint客户端参考因为公司需要用到grpc,所以自己手写了一个rpc框架后,又学习了一下怎么使用别人的rpc框架,这里演示了如何使用grpc来进行服务调用,使用步骤如下:一、新建maven项目ste
原创
发布博客 2022.04.04 ·
50 阅读 ·
0 点赞 ·
0 评论

手写RPC学习笔记

RPC学习笔记
原创
发布博客 2022.04.04 ·
757 阅读 ·
0 点赞 ·
0 评论

语雀文章导入CSDN

语雀文章导入CSDN一 语雀导出1.1 语雀文章导出1.2 导出设置二 CSDN导入2.1 登录CSDN2.2 导入文章三 格式纠正3.1 图片不显示3.2 发布文章一 语雀导出1.1 语雀文章导出step1 找到一篇语雀的写好的文章step2 点击右上角折叠按钮step3 点击导出1.2 导出设置step 1 点击导出后页面如图所示step2 选择 markdownstep3 点击最下面导出即可,选择保存路径,即可导出md文件二 CSDN导入在经过导出md文件之后2.1 登
原创
发布博客 2022.04.03 ·
336 阅读 ·
0 点赞 ·
2 评论

NC刷题笔记14-其他算法

NC刷题笔记14-其他算法1 KMP2 替换空格3 最长公共前缀4 回文串4.1 最长回文串4.2 验证回文串4.3 最长回文子串4.4 最长回文子序列5 括号匹配6 把字符串转换成整数7 随机算法Knuth8 堆排序9 快速排序10 归并排序11 堆Java实现1 KMP思路:字符串A和字符串B匹配的过程中不需要从头开始,如果已经匹配过的字符字串有前后缀相同的部分,就从公共前后缀后面的位置开始匹配/** * @Author 丁永新 * @Date 2022/2/22 */public c
原创
发布博客 2022.04.03 ·
262 阅读 ·
0 点赞 ·
0 评论

NC刷题笔记13-模拟

NC刷题笔记13-模拟BM97 旋转数组BM98 螺旋矩阵BM99 顺时针旋转矩阵BM100 设计LRU缓存结构BM101 设计LFU缓存结构BM97 旋转数组描述一个数组A中存有 n 个整数,在不允许使用另外数组的前提下,将每个整数循环向右移 M( M >=0)个位置,即将A中的数据由(A0 A1 ……AN-1 )变换为(AN-M …… AN-1 A0 A1 ……AN-M-1 )(最后 M 个数循环移至最前面的 M 个位置)。如果需要考虑程序移动数据的次数尽量少,要如何
原创
发布博客 2022.04.03 ·
547 阅读 ·
0 点赞 ·
0 评论

NC刷题笔记12-贪心算法

NC刷题笔记12-贪心算法BM95 分糖果问题BM96 主持人调度BM95 分糖果问题描述一群孩子做游戏,现在请你根据游戏得分来发糖果,要求如下:1. 每个孩子不管得分多少,起码分到一个糖果。2. 任意两个相邻的孩子之间,得分较多的孩子必须拿多一些糖果。(若相同则无此限制)给定一个数组 arr 代表得分数组,请返回最少需要多少糖果。要求: 时间复杂度为 O(n) 空间复杂度为 O(n)数据范围:1≤n≤100000 ,1≤ai≤1000示例1输入:[1,1,2]返回值:4说明:最优
原创
发布博客 2022.04.03 ·
270 阅读 ·
0 点赞 ·
0 评论

NC刷题笔记11-双指针

NC刷题笔记11-双指针BM87 合并两个有序的数组BM88 判断是否为回文字符串BM89 合并区间BM90 最小覆盖子串BM91 反转字符串BM92 最长无重复子数组BM93 盛水最多的容器BM94 接雨水问题BM87 合并两个有序的数组描述给出一个有序的整数数组 A 和有序的整数数组 B ,请将数组 B 合并到数组 A 中,变成一个有序的升序数组数据范围:0≤n,m≤100,|A_i| <=100∣ |B_i| <= 100注意: 1.保证
原创
发布博客 2022.04.03 ·
22 阅读 ·
0 点赞 ·
0 评论

NC刷题笔记10-动态规划

NC刷题笔记10-动态规划BM62 斐波那契数列BM63 跳台阶BM64 最小花费爬楼梯BM65 最长公共子序列(二)BM66 最长公共子串BM67 不同路径的数目(一)BM68 矩阵的最小路径和BM69 把数字翻译成字符串BM70 兑换零钱(一)BM71 最长上升子序列(一)BM72 连续子数组的最大和BM73 最长回文子串BM74 数字字符串转化成IP地址BM75 编辑距离(一)BM76 正则表达式匹配BM77 最长的括号子串BM78 打家
原创
发布博客 2022.04.02 ·
196 阅读 ·
0 点赞 ·
0 评论

NC刷题笔记9-递归回溯

NC刷题笔记9-递归回溯BM55 没有重复项数字的全排列BM56 有重复项数字的全排列BM57 岛屿数量BM58 字符串的排列BM59 N皇后问题BM60 括号生成BM61 矩阵最长递增路径BM55 没有重复项数字的全排列思路: 回溯,用一个boolean数组标识是否走过import java.util. ;public class Solution { ArrayList<ArrayList<Integer>> res=new Ar
原创
发布博客 2022.04.02 ·
14 阅读 ·
0 点赞 ·
0 评论

NC刷题笔记8-哈希

NC刷题笔记8-哈希BM50 两数之和BM51 数组中出现次数超过一半的数字BM52 数组中只出现一次的两个数字BM53 缺失的第一个正整数BM54 三数之和BM50 两数之和public class Solution { public int[] twoSum (int[] numbers, int target) { HashMap<Integer,Integer> map=new HashMap<Integer,Integer>
原创
发布博客 2022.04.02 ·
12 阅读 ·
0 点赞 ·
0 评论

NC刷题笔记7-字符串

NC刷题笔记7-字符串NC1 大数加法NC10 大数乘法NC17 最长回文子串NC20 数字字符串转化成IP地址BM83 字符串变形BM84 最长公共前缀BM85 验证IP地址BM86 大数加法NC1 大数加法描述以字符串的形式读入两个数字,编写一个函数计算它们的和,以字符串形式返回。数据范围:len(s),len(t),len(s),len(t)≤100000,字符串仅由'0'~‘9’构成要求:时间复杂度 O(n)示例1输入:"1","99"返回
原创
发布博客 2022.04.02 ·
25 阅读 ·
0 点赞 ·
0 评论

NC刷题笔记6-堆

NC刷题笔记6-堆NC51 合并k个已排序的链表NC82 滑动窗口最大值NC88 寻找第K大NC119 最小的K个数NC131 数据流中的中位数NC251 多数组第 K 小数NC252 多数组中位数NC51 合并k个已排序的链表import java.util. ;public class Solution { public ListNode mergeKLists(ArrayList<ListNode> lists){
原创
发布博客 2022.04.02 ·
10 阅读 ·
0 点赞 ·
0 评论

NC刷题笔记5-队列

NC刷题笔记5-队列NC82 滑动窗口最大值NC123 序列化二叉树NC267 从上往下打印二叉树NC82 滑动窗口最大值描述给定一个长度为 n 的数组 num 和滑动窗口的大小 size ,找出所有滑动窗口里数值的最大值。例如,如果输入数组 {2,3,4,2,6,2,5,1} 及滑动窗口的大小3,那么一共存在6个滑动窗口,他们的最大值分别为 {4,4,6,6,6,5}; 针对数组 {2,3,4,2,6,2,5,1} 的滑动窗口有以下6个: {[2,3,4],2,6,2,5,1}, {2,[3,4,
原创
发布博客 2022.04.02 ·
532 阅读 ·
0 点赞 ·
0 评论

NC刷题笔记4-栈

NC刷题笔记4-栈NC14 按之字形顺序打印二叉树NC45 实现二叉树先序,中序和后序遍历NC52 有效括号序列NC76 用两个栈实现队列LC84 直方图最大矩阵NC90 包含min函数的栈NC115 栈和排序NC117 直方图最大矩阵NC137 表达式求值NC 157单调栈NC175 合法括号字符串NC199 字符串解码NC208 每日温度NC 216 逆波兰表达式NC219 移掉 K 位数字NC237 最大矩形NC240 计算器(一)NC241 计算器(二)NC14 按之字
原创
发布博客 2022.04.02 ·
76 阅读 ·
0 点赞 ·
0 评论

NC刷题笔记3-树

NC刷题笔记3-树NC5 二叉树根节点到叶子节点的所有路径和NC6 二叉树中的最大路径和NC8 二叉树中和为某一值的路径(二)NC9 二叉树中和为某一值的路径(一)NC11 将升序数组转化为平衡二叉搜索树NC12 重建二叉树NC13 二叉树的最大深度NC14 按之字形顺序打印二叉树NC15 求二叉树的层序遍历NC16 对称的二叉树NC 45 二叉树前序、中序和后序遍历NC 58找到两个错误结点NC60 判断一棵二叉树是否为搜索二叉树和完全二叉树NC62判断是不是平衡二叉树NC72 二叉树镜像NC8
原创
发布博客 2022.04.02 ·
285 阅读 ·
0 点赞 ·
0 评论

Git 安装、配置、使用学习笔记

Git 安装、配置、使用学习笔记一 、Git安装1.1 下载Git1.2 安装Git二、Git本地使用2.1 Git的linux使用2.2 Git的个人配置2.3 Git项目搭建2.3.1 下载gitee上的项目2.3.2 Git免密配置三、Git与IDEA集成3.1 集成方法一3.2 集成方法二四、Git常用命令4.1仓库4.2 配置4.3 增加和删除文件4.4 代码提交4.5 分支4.6标签4.7 远程同步4.8 撤销4.9 其他五、Git在线练习小游戏六、参考一 、Git安装1.1 下载Git1
原创
发布博客 2022.04.02 ·
34 阅读 ·
0 点赞 ·
0 评论

优化算法学习笔记

这里写目录标题一 遗传算法1 遗传算法介绍2 遗传算法的步骤3 遗传算法的Java例子3.1 普通函数(基本遗传算法)1 编码与解码2 计算适应度3 选择4 交叉5 变异6 主方法3.2 TSP问题1 环境类2 主程序3 基因工具类4 个体类5 群体类二 蚁群算法1 蚁群算法简介2 蚁群算法应用3 蚁群算法基本原理4 算法步骤4.1算法参数4.2构建路径4.3 更新信息素4.4 判断是否达到终止条件5 TSP例题Java解决5.1 蚁群算法类5.2 蚂蚁类5.3 主程序三 神经网络1 神经网络简介1.1智慧
原创
发布博客 2022.04.01 ·
196 阅读 ·
0 点赞 ·
0 评论
加载更多