- 博客(18)
- 收藏
- 关注
原创 程序员工作后怎么学习算法?
先交代下自我背景吧,本科数学专业,大学有学基础的C语言以及数据结构,对于算法已经有基础的概念。后来由于某个契机重拾算法(啊哈哈哈,其实是为了跳槽。。。),连续一个月每天一题,基本这样子感觉算法掌握得差不多了。后续只要保持一定的规律刷刷算法即可,起码这样子对我是可以的。
2022-09-28 23:09:53 688
原创 回顾2021,程序媛都做了些什么?
回顾2021,程序媛都做了些什么?首先自我介绍一下,一名JAVA后端女程序媛,自毕业后加入当前所在公司,现已入职三年多,坐标上海。
2022-01-08 23:54:34 3414
原创 刷题LeetCode:2.两数相加
刷题LeetCode:2.两数相加。给你两个 非空 的链表,表示两个非负的整数。它们每位数字都是按照 逆序 的方式存储的,并且每个节点只能存储 一位 数字。请你将两个数相加,并以相同形式返回一个表示和的链表。你可以假设除了数字 0 之外,这两个数都不会以 0 开头。
2022-01-02 23:54:18 176
原创 刷题LeetCode:4.寻找两个正序数组的中位数
刷题LeetCode:4.寻找两个正序数组的中位数。本题解题思路应该如何呢?根据题目中时间复杂度,可以考虑采用二分查找,这也是本题的难度所在。
2022-01-02 09:00:00 190
原创 排序算法2:选择排序
什么是选择排序?1.首先在未排序序列中找到最小(大)元素,存放到排序序列的起始位置。2.再从剩余未排序元素中继续寻找最小(大)元素,然后放到已排序序列的末尾。3.重复第二步,直到所有元素均排序完毕。
2021-12-30 22:09:22 732
原创 排序算法1:冒泡排序
什么是冒泡排序?比较相邻的元素。如果第一个比第二个大,就交换它们两个;对每一对相邻元素作同样的工作,从开始第一对到结尾的最后一对,这样在最后的元素应该会是最大的数;针对所有的元素重复以上的步骤,除了最后一个;重复步骤1,2,3,直到排序完成。
2021-12-29 21:54:54 386
原创 刷题LeetCode:206.反转链表
目录题目描述代码实现题目链接:https://leetcode-cn.com/problems/reverse-linked-list/submissions/题目描述给你单链表的头节点 head ,请你反转链表,并返回反转后的链表。代码实现解题思路1:迭代遍历链表,当前节点的 next 指针指向前一个节点,因而需要存储前一个节点。/** * 迭代 * 遍历链表,当前节点的 next 指针指向前一个节点,因而需要存储前一个节点。 * 时间复杂度:O.
2021-11-05 22:31:20 167
原创 刷题LeetCode:160.相交链表
目录题目描述题目分析代码实现解题思路1:哈希集合结题思路2:双指针题目链接:力扣题目描述给两个单链表的头节点headA和headB,找出并返回两个单链表相交的起始节点。如果两个链表没有交点,返回null。题目数据保证整个链式结构中不存在环。函数返回结果后,链表必须保持其原始结构。题目分析两链表是相交,不是交叉,因而只要找到相交的起始结点,之后的结点都认为是相交的。如下图所示,相交的起始结点认为是c1代码实现解...
2021-11-03 22:29:51 253
原创 设计模式(四):工厂方法模式
目录往期回顾 工厂方法模式 往期回顾 【ZJ-001期】数据结构8期【ZJ-009期】算法(十二):排序算法小结12期【ZJ-021期】设计模式(一):开篇【ZJ-022期】设计模式(二):简介【ZJ-023期】设计模式(三):单例模式工厂方法模式 定义一个用于创建对象的接口,让子类决定实例化哪...
2020-11-05 15:32:19 173
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人