- 博客(191)
- 资源 (2)
- 收藏
- 关注
原创 作为程序员你一定要知道的工作小技巧
本博客主要记录一下自己在工作过程中学到的以及使用的工作小技巧,希望能够对大家有所帮助。如果大家有其他的小技巧欢迎在评论区评论或者私信我,感谢大家的不吝赐教。我会定期根据我学到的技巧和大家提供的小技巧补充本文章。
2021-11-05 11:25:10
3235
原创 君子终日乾乾,夕惕若,厉无咎。
君子进德修业。忠信,所以进德也,修辞立其诚,所以居业也。知至至之,可与言几也,知终终之,可与存义也。是故,居上位而不骄,在下位而不忧。故乾乾因其时而惕,虽危无咎矣!
2021-10-24 22:51:08
364
5
原创 1024快乐!
又到了我们程序员的节日,在这里祝大家节日快乐!感谢大家一直以来的支持与陪伴,我会继续努力,有时间就多多总结写一些高质量的博客。博客专家一直是博主的心愿,希望经过自己的努力可以成为一个博客专家。今天水一篇博客拿个1024勋章嘿嘿。最近工作实在是有点忙,有时间我一定会好好学习好好创作!谢谢大家! 君子终日乾乾,夕惕若,厉无咎。与君共勉!...
2021-10-24 19:08:48
252
原创 如何解决SVN更新时报Previous operation has not finished; run ‘dleanup‘ if it was interruptedPlease……的错误
写在前面:大家好!我是AC-fun,我的昵称来自两个单词Accepted和fun。我是一个热爱ACM的蒟蒻。如果博客中有不足或者的错误的地方欢迎在评论区或者私信我指正,感谢大家的不吝赐教。我的唯一博客更新地址是:https://ac-fun.blog.csdn.net/。非常感谢大家的支持。一起加油,冲鸭! 用知识改变命运,用知识成就未来!加油 (ง •̀o•́)ง (ง •̀o•́)ง文章目录问题描述解决办法问题描述 在使用 SVN 更新远程仓库中的项目的时候出现 Previous oper.
2021-09-20 17:38:55
1885
2
原创 作为一名高级开发者需要具备的技能之画UML类图
在之前的博客:如何使用IDEA画UML图 中已经详细的说明了如何使用 IDEA 画 UML图。本篇博客来详细的讲解一下 UML 的类图怎样画。在 UML 的 13 种图中,类图 是使用频率最高的 UML 图之一。作为一名开发人员画类图是必须具备的技能。类图可以帮助我们简洁明了的描述系统中的类,以及各个类之间的关系的静态视图,能够更好的帮助我们在开发系统之前对系统有一个全面的认识。
2021-07-06 18:33:20
593
6
原创 我的程序人生
写了这么久的博客还从来没写过类似的文章,今天借此机会就写一篇吧。关于《新程序员》这本杂志我还没有看过全套的,以后有机会一定仔细拜读一下。今天借即将毕业之际来写一下我的程序人生的初始阶段,和大家聊一聊是怎样的契机让我称为一名程序员,聊一聊自己大学四年的时光以及自己技术之路的起起伏伏,分享一下自己的一些学习经验。第一次写类似的文章,不喜勿喷哈。同时谨以此文纪念自己的大学时光。
2021-06-28 21:26:22
15260
431
原创 Java集合框架源码详解系列(二)——迭代器设计模式详解
迭代器模式可以帮助我们很方便的实现集合遍历,在使用迭代器遍历时不需要知道集合对象的底层表示。迭代器模式给我们提供了一种遍历集合元素的统一接口,可以用一致的方法遍历集合元素。 如果不使用迭代器,在我们设计实现集合遍历,访问集合中的数据的时候通常将集合的创建和遍历放在同一个类中。比如数据结构中的单链表的遍历就是将创建和遍历放到了一个类中,这样不利于程序的拓展,如果链表的形式变了,需要更换遍历方法就必须要更改源码,这样就违背了 开闭原则。
2021-06-18 23:33:00
362
8
原创 如何使用IDEA画UML图
统一建模语言 (Unified Modeling Language,UML) 是一种为面向对象系统的产品进行说明、可视化和编制文档的一种标准语言,是非专利的第三代建模和规约语言。UML是面向对象设计的建模工具,独立于任何具体程序设计语言。
2021-06-14 18:33:06
10604
23
原创 Java集合框架源码详解系列(一)
之前写过关于 C++ STL 的四篇文章,现在开始写一下关于Java集合框架的文章,该系列博客将会写很长时间。不管是C++的STL也好,Java的集合框架也好,这两者其实都是将一些基本的数据结构进行了封装实现,从现在开始博主将带领大家遨游在Java集合框架的源码世界,准备好了吗?Go!!!
2021-05-30 22:00:05
3664
39
原创 LeetCode 993. 二叉树的堂兄弟节点——每日一题
本题主要考察了二叉树的遍历,可以使用 宽度优先搜索 在遍历的同时使用 map 记录每个节点的值、深度以及其父节点。遍历完成之后直接进行比较即可。
2021-05-17 16:46:08
166
原创 MyBatis项目实战(2)实现插入操作
本篇主要讲述如何在上一篇博客 MyBatis项目实战(1)实现查询操作 的基础上使用MyBatis实现向MySQL数据库中插入数据。
2021-05-08 15:31:13
194
原创 MyBatis项目实战(1)实现查询操作
MyBatis 是一款优秀的持久层框架,它支持定制化 SQL、存储过程以及高级映射。MyBatis 避免了几乎所有的 JDBC 代码和手动设置参数以及获取结果集。MyBatis 可以使用简单的 XML 或注解来配置和映射原生信息,将接口和 Java 的 POJOs(Plain Ordinary Java Object,普通的 Java对象)映射成数据库中的记录。
2021-05-08 10:46:08
387
原创 Codeforces 231A.Team(brute force, greedy)
大家好!我是`AC-fun`,我的昵称来自两个单词`Accepted`和`fun`。我是一个热爱ACM的蒟蒻。最近打算刷一下 Codeforces OJ的题目,一方面边学习算法边刷题,一方面也想提升一下自己的英语阅读水平。坚持就是胜利,加油!
2021-04-24 16:34:42
458
原创 算法竞赛常用知识
本篇博客来整理一下在算法竞赛中经常用到但是可能会忘掉的知识,有些知识平时可能会记得,但是到真正算法竞赛的时候可能就会忘掉,甚至有一些很常见的知识再平时就忘掉了。但是在算法竞赛中碰到相关的题目还不得不使用这些知识,如果在算法竞赛的时候想不起来那是非常可惜的。所以来总结一下一些在刷题中常用的知识以及需要注意的地方,如果有不足或者需要补充的地方欢迎大家评论留言,博主也会随时补充更新。
2021-04-14 20:43:21
798
原创 试除法求数的约数
从 1 ~ n 依次枚举试除每一个数,判断该数是否可以整除 n,如果可以整除 n,说明该数是 n 的约数。试除法还可以优化一下,即我们可以发现约数都是 成对出现 的,如果 d 可以整除 n,那么 n / d 也可以整除 n。我们假设 d 与 n / d 中 d 是较小的那一个,那么 d
2021-04-11 10:54:15
233
原创 分解质因数
把一个合数用质因数相乘的形式表示出来,叫做分解质因数。分解质因数可以使用 试除法 来分解,即从小到大枚举每一个数 d,如果 d 可以整除 n,则从 n 中除掉所有的因子 d,同时累计除去 d 的个数。通过唯一分解定理,可以知道一个合数的因子一定在扫描到这个合数之前就被其更小的质因子 d 除掉了,所以能整除 n 的一定是质数。
2021-04-03 17:08:12
5338
原创 LeetCode 1006. 笨阶乘——每日一题
通常,正整数 n 的阶乘是所有小于或等于 n 的正整数的乘积。例如,factorial(10) = 10 * 9 * 8 * 7 * 6 * 5 * 4 * 3 * 2 * 1。相反,我们设计了一个笨阶乘 clumsy:在整数的递减序列中,我们以一个固定顺序的操作符序列来依次替换原有的乘法操作符:乘法(*),除法(/),加法(+)和减法(-)。例如,clumsy(10) = 10 * 9 / 8 + 7 - 6 * 5 / 4 + 3 - 2 * 1。然而,这些运算仍然使用通常的算术运算顺序:我们在
2021-04-01 10:46:41
212
原创 算法竞赛的一些小技巧
本篇博客来总结一下博主所了解的有关算法竞赛的一些小技巧,如果有不足或者需要补充的地方欢迎大家评论留言,我会随时补充更新。
2021-03-30 20:52:59
2155
10
原创 LeetCode 83. 删除排序链表中的重复元素——每日一题
存在一个按升序排列的链表,给你这个链表的头节点 head ,请你删除所有重复的元素,使每个元素 只出现一次。返回同样按升序排列的结果链表。
2021-03-26 12:07:07
281
原创 AcWing 89. a^b(快速幂)
快速幂就是快速算底数的 n 次幂。其时间复杂度为 O(log₂N), 与朴素的 O(N) 相比效率有了极大的提高。
2021-03-23 15:26:26
177
原创 LeetCode 191. 位1的个数——每日一题
编写一个函数,输入是一个无符号整数(以二进制串的形式),返回其二进制表达式中数字位数为 '1' 的个数(也被称为 汉明重量)。
2021-03-22 16:58:55
93
原创 LeetCode 73. 矩阵置零——每日一题
给定一个 m x n 的矩阵,如果一个元素为 0,则将其所在行和列的所有元素都设为 0 。请使用 原地 算法。
2021-03-21 18:10:21
1943
10
原创 堆优化版Dijkstra算法
上一篇博客提到的 朴素Dijkstra算法 适用于求 稠密图 的最短路问题,因为 稠密图 的边数远远大于点数,朴素Dijkstra算法的思路为进行 n 次循环,每次循环再遍历 n 个点确定一个还未确定最短距离的点中距离源点最近距离的点,然后再用这个点更新其所能到达的点(算法默认当前的点可以到达所有的点,因为没有到达的点之间的距离都已经初始化为正无穷大,所以不会被更新,不影响结果)。时间复杂度为 O(n2)。
2021-03-09 00:00:20
4758
4
原创 蓝桥杯 奖学金
某小学最近得到了一笔赞助,打算拿出其中一部分为学习成绩优秀的前 5 名学生发奖学金。期末,每个学生都有 3 门课的成绩:语文、数学、英语。先按总分从高到低排序,如果两个同学总分相同,再按语文成绩从高到低排序,如果两个同学总分和语文成绩都相同,那么规定学号小的同学排在前面,这样,每个学生的排序是唯一确定的。
2021-03-07 16:21:01
481
原创 蓝桥杯 纪念品分组(贪心,排序)
元旦快到了,校学生会让乐乐负责新年晚会的纪念品发放工作。为使得参加晚会的同学所获得的纪念品价值相对均衡,他要把购来的纪念品根据价格进行分组,但每组最多只能包括两件纪念品,并且每组纪念品的价格之和不能超过一个给定的整数。为了保证在尽量短的时间内发完所有纪念品,乐乐希望分组的数目最少。你的任务是写一个程序,找出所有分组方案中分组数最少的一种,输出最少的分组数目。
2021-03-06 22:36:42
464
原创 朴素Dijkstra算法
Dijkstra 算法用来求 所有边权都是正数 的 单源最短路 。边权 即两个点之间的距离;单源 即只求从源点(起点,终点也称为汇点)到其他点的最短距离;朴素Dijkstra 算法适用于求 稠密图 的最短距离问题。稠密图是指边数有很多的图,假设 n 为图的点数, m 为图的边数,那么一般当 m = n2 时该图为稠密图。朴素Dijkstra 算法的时间复杂度为 O(n2)。
2021-03-04 22:50:24
891
1
原创 通俗易懂的字符串哈希算法,你确定不来看一下吗?
字符串哈希 也叫做 字符串前缀哈希法 就是将预先一个字符串的每一个前缀都映射成一个 哈希值,当需要判断两个 子字符串 是否一样时,只需要判断这两个子字符串的哈希值是否相同就可以了。这样就可以通过 O(n) 的时间预处理字符串所有前缀 Hash 并在 O(1) 的时间内查询它的任意子串的 Hash 值。
2021-02-27 22:42:49
423
4
原创 C++ STL详解(4)
STL 是“Standard Template Library”的缩写,中文译为“标准模板库”。STL 是 C++ 标准库的一部分,不用单独安装。 C++ 对模板(Template)支持得很好,STL 就是借助模板把常用的数据结构及其算法都实现了一遍,并且做到了数据结构和算法的分离。例如,vector 的底层为顺序表(数组),list 的底层为双向链表,deque 的底层为循环队列,set 的底层为红黑树,hash_set 的底层为哈希表。
2021-02-22 16:51:00
1025
28
原创 C++ STL详解(3)
STL 是“Standard Template Library”的缩写,中文译为“标准模板库”。STL 是 C++ 标准库的一部分,不用单独安装。 C++ 对模板(Template)支持得很好,STL 就是借助模板把常用的数据结构及其算法都实现了一遍,并且做到了数据结构和算法的分离。例如,vector 的底层为顺序表(数组),list 的底层为双向链表,deque 的底层为循环队列,set 的底层为红黑树,hash_set 的底层为哈希表。
2021-02-22 15:07:15
420
原创 C++ STL详解(2)
STL 是“Standard Template Library”的缩写,中文译为“标准模板库”。STL 是 C++ 标准库的一部分,不用单独安装。 C++ 对模板(Template)支持得很好,STL 就是借助模板把常用的数据结构及其算法都实现了一遍,并且做到了数据结构和算法的分离。例如,vector 的底层为顺序表(数组),list 的底层为双向链表,deque 的底层为循环队列,set 的底层为红黑树,hash_set 的底层为哈希表。
2021-02-21 12:31:14
1959
6
原创 C++ STL详解(1)
STL 是“Standard Template Library”的缩写,中文译为“标准模板库”。STL 是 C++ 标准库的一部分,不用单独安装。 C++ 对模板(Template)支持得很好,STL 就是借助模板把常用的数据结构及其算法都实现了一遍,并且做到了数据结构和算法的分离。例如,vector 的底层为顺序表(数组),list 的底层为双向链表,deque 的底层为循环队列,set 的底层为红黑树,hash_set 的底层为哈希表。
2021-02-19 22:07:12
1307
4
原创 哈希表
哈希表(Hash Table),又叫散列表,是能够通过给定的关键字的值直接访问到具体对应的值的一个数据结构。也就是说,把关键字映射到一个表中的位置来直接访问记录,以加快访问速度。
2021-02-18 19:15:45
771
29
原创 静态链表的介绍及实现
用数组描述的单链表叫做静态链表,它兼顾了顺序表和链表的优点于一身,可以看做是顺序表和链表的升级版。使用静态链表存储数据,数据全部存储在数组中(和顺序表一样),但存储位置是随机的,数据之间"一对一"的逻辑关系通过一个整形变量(称为"游标",和指针功能类似)维持(和链表类似)。
2021-02-17 22:20:01
721
原创 并查集详解
并查集是一种树型的数据结构,用于处理一些不相交集合的合并及查询问题。并查集的思想是用一个数组表示了整片森林(parent),树的根节点唯一标识了一个集合,我们只要找到了某个元素的的树根,就能确定它在哪个集合里。
2021-02-15 22:56:07
3051
11
ACM算法专题讲解课件.zip
2020-04-19
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人