自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

转载 第四周学习笔记

第四周:继承与多态面向对象程序设计语言有三大特性:封装、继承和多态性。继承是面向对象语言的重要特征之一,没有继承的语言只能被称作“使用对象的语言”。继承是非常简单而强大的设计思想,它提供了我们代码重用和程序组织的有力工具。类是规则,用来制造对象的规则。我们不断地定义类,用定义的类制造一些对象。类定义了对象的属性和行为,就像图纸决定了房子要盖成什么样子。一张图纸...

2019-06-21 15:02:00 219

转载 查找里程————mooc《面向对象程序设计——Java语言》-(浙大翁凯)第三周编程题...

容器是现代程序设计非常基础而重要的手段。所谓容器,就是“放东西的东西”。数组可以看作是一种容器,但是数组的元素个数一旦确定就无法改变,这在实际使用中是很大的不足。一般意义上的容器,是指具有自动增长容量能力的存放数据的一种数据结构。在面向对象语言中,这种数据结构本身表达为一个对象。所以才有“放东西的东西”的说法。Java具有丰富的容器,Java的容器具有丰富的功能和良好的性能。...

2019-06-13 20:29:00 775

转载 有秒计时的数字时钟——mooc《面向对象程序设计——Java语言》-(浙大翁凯)第二周编程题...

封装,就是把数据和对这些数据的操作放在一起,并且用这些操作把数据掩盖起来,是面向对象的基本概念之一,也是最核心的概念。我们有一个非常直截了当的手段来保证在类的设计的时候做到封装:所有的成员变量必须是private的,这样就避免别人任意使用你的内部数据;所有public的函数,只是用来实现这个类的对象或类自己要提供的服务的,而不是用来直接访问数据的。除非对...

2019-06-13 17:07:00 698

转载 分数——mooc《面向对象程序设计——Java语言》-(浙大翁凯)第一周编程题

题目内容:设计一个表示分数的类Fraction。这个类用两个int类型的变量分别表示分子和分母。这个类的构造函数是:Fraction(int a, int b)构造一个a/b的分数。这个类要提供以下的功能:double toDouble();将分数转换为doubleFraction plus(Fraction r);...

2019-06-12 15:32:00 799

转载 分布式

一、分布式锁数据库的唯一索引Redis 的 SETNX 指令Redis 的 RedLock 算法Zookeeper 的有序节点二、分布式事务2PC本地消息表三、CAP一致性可用性分区容忍性权衡四、BASE基本可用软状态最终一致性五、Paxos执行过程约束条件...

2019-06-12 14:16:00 114

转载 系统设计基础

一、性能二、伸缩性三、扩展性四、可用性五、安全性参考资料一、性能性能指标1. 响应时间指某个请求从发出到接收到响应消耗的时间。在对响应时间进行测试时,通常采用重复请求的方式,然后计算平均响应时间。2. 吞吐量指系统在单位时间内可以处理的请求数量,通常使用每秒的请求数来衡量。3. 并发用户数指系统能同时处理的并发用户请求数量。...

2019-06-12 14:15:00 119

转载 代码可读性

一、可读性的重要性二、用名字表达代码含义三、名字不能带来歧义四、良好的代码风格五、为何编写注释六、如何编写注释七、提高控制流的可读性八、拆分长表达式九、变量与可读性十、抽取函数十一、一次只做一件事十二、用自然语言表述代码十三、减少代码量参考资料一、可读性的重要性编程有很大一部分时间是在阅读代码,不仅要阅读自己的代码,而且...

2019-06-12 13:57:00 252

转载 Redis

一、概述二、数据类型STRINGLISTSETHASHZSET三、数据结构字典跳跃表四、使用场景计数器缓存查找表消息队列会话缓存分布式锁实现其它五、Redis 与 Memcached数据类型数据持久化分布式内存管理机制六、键的过期时间七、数据...

2019-06-12 13:56:00 98

转载 MySQL

一、索引B+ Tree 原理MySQL 索引索引优化索引的优点索引的使用条件二、查询性能优化使用 Explain 进行分析优化数据访问重构查询方式三、存储引擎InnoDBMyISAM比较四、数据类型整型浮点数字符串时间和日期五、切分水平切分垂直切分Shard...

2019-06-12 13:55:00 88

转载 Leetcode-Database 题解.

595. Big Countries627. Swap Salary620. Not Boring Movies596. Classes More Than 5 Students182. Duplicate Emails196. Delete Duplicate Emails175. Combine Two Tables181. Employees Ear...

2019-06-12 13:54:00 275

转载 SQL

一、基础二、创建表三、修改表四、插入五、更新六、删除七、查询八、排序九、过滤十、通配符十一、计算字段十二、函数十三、分组十四、子查询十五、连接十六、组合查询十七、视图十八、存储过程十九、游标二十、触发器二十一、事务管理二十二、字符集二十三、权限管理参考资料一、基础模式定义了数据如何...

2019-06-12 13:53:00 165

转载 数据库系统原理

一、事务概念ACIDAUTOCOMMIT二、并发一致性问题丢失修改读脏数据不可重复读幻影读三、封锁封锁粒度封锁类型封锁协议MySQL 隐式与显示锁定四、隔离级别未提交读(READ UNCOMMITTED)提交读(READ COMMITTED)可重复读(REPEATABLE READ)可...

2019-06-12 13:52:00 128

转载 面向对象——面向对象思想

一、三大特性封装继承多态二、类图泛化关系 (Generalization)实现关系 (Realization)聚合关系 (Aggregation)组合关系 (Composition)关联关系 (Association)依赖关系 (Dependency)三、设计原则S.O.L.I.D其他常见原则参考资料...

2019-06-12 13:51:00 138

转载 面向对象——设计模式

一、概述二、创建型1. 单例(Singleton)2. 简单工厂(Simple Factory)3. 工厂方法(Factory Method)4. 抽象工厂(Abstract Factory)5. 生成器(Builder)6. 原型模式(Prototype)三、行为型1. 责任链(Chain Of Responsibility)...

2019-06-12 13:50:00 124

转载 Leetcode题解——数据结构之位运算

1. 统计两个数的二进制表示有多少位不同2. 数组中唯一一个不重复的元素3. 找出数组中缺失的那个数4. 数组中不重复的两个元素5. 翻转一个数的比特位6. 不用额外变量交换两个整数7. 判断一个数是不是 2 的 n 次方8. 判断一个数是不是 4 的 n 次方9. 判断一个数的位级表示是否不会出现连续的 0 和 110. 求一个数的补码11....

2019-06-12 13:47:00 243

转载 Leetcode题解——数据结构之图

二分图1. 判断是否为二分图拓扑排序1. 课程安排的合法性2. 课程安排的顺序并查集1. 冗余连接二分图如果可以用两种颜色对图中的节点进行着色,并且保证相邻的节点颜色不同,那么这个图就是二分图。1. 判断是否为二分图785. Is Graph Bipartite? (Medium)Input: [[1,3],...

2019-06-12 13:45:00 183

转载 Leetcode题解——数据结构之数组与矩阵

1. 把数组中的 0 移到末尾2. 改变矩阵维度3. 找出数组中最长的连续 14. 有序矩阵查找5. 有序矩阵的 Kth Element6. 一个数组元素在 [1, n] 之间,其中一个数被替换为另一个数,找出重复的数和丢失的数7. 找出数组中重复的数,数组值在 [1, n] 之间8. 数组相邻差值的个数9. 数组的度10. 对角元素相等的矩阵...

2019-06-12 13:44:00 925

转载 Leetcode题解——数据结构之字符串

1. 字符串循环移位包含2. 字符串循环移位3. 字符串中单词的翻转4. 两个字符串包含的字符是否完全相同5. 计算一组字符集合可以组成的回文字符串的最大长度6. 字符串同构7. 回文子字符串个数8. 判断一个整数是否是回文数9. 统计二进制字符串中连续 1 和连续 0 数量相同的子字符串个数1. 字符串循环移位包含编程之美 3.1...

2019-06-12 13:43:00 269

转载 Leetcode题解——数据结构之哈希表

1. 数组中两个数的和为给定值2. 判断数组是否含有重复元素3. 最长和谐序列4. 最长连续序列哈希表使用 O(N) 空间复杂度存储数据,并且以 O(1) 时间复杂度求解问题。Java 中的 HashSet 用于存储一个集合,可以查找元素是否在集合中。如果元素有穷,并且范围不大,那么可以用一个布尔数组来存储一个元素是否存在。例如对于只有小写字符的元素,...

2019-06-12 13:42:00 199

转载 Leetcode题解——数据结构之栈和队列

1. 用栈实现队列2. 用队列实现栈3. 最小值栈4. 用栈实现括号匹配5. 数组中元素与下一个比它大的元素之间的距离6. 循环数组中比当前元素大的下一个元素1. 用栈实现队列232. Implement Queue using Stacks (Easy)栈的顺序为后进先出,而队列的顺序为先进先出。使用两个栈实现队列,一个元素需要经过两个栈才能出队...

2019-06-12 13:41:00 245

转载 Leetcode题解——数据结构之树

递归1. 树的高度2. 平衡树3. 两节点的最长路径4. 翻转树5. 归并两棵树6. 判断路径和是否等于一个数7. 统计路径和等于一个数的路径数量8. 子树9. 树的对称10. 最小路径11. 统计左叶子节点的和12. 相同节点值的最大路径长度13. 间隔遍历14. 找出二叉树中第二小的节点层次遍历1. 一棵树每层节...

2019-06-12 13:40:00 401

转载 Leetcode题解——数据结构之链表

1. 找出两个链表的交点2. 链表反转3. 归并两个有序的链表4. 从有序链表中删除重复节点5. 删除链表的倒数第 n 个节点6. 交换链表中的相邻结点7. 链表求和8. 回文链表9. 分隔链表10. 链表元素按奇偶聚集链表是空节点,或者有一个值和一个指向下一个链表的指针,因此很多链表问题可以用递归来处理。1. 找出两个链表的交点1...

2019-06-12 13:39:00 700

转载 Leetcode题解——算法思想之数学

素数分解整除最大公约数最小公倍数1. 生成素数序列2. 最大公约数3. 使用位操作和减法求解最大公约数进制转换1. 7 进制2. 16 进制3. 26 进制阶乘1. 统计阶乘尾部有多少个 0字符串加法减法1. 二进制加法2. 字符串加法相遇问题1. 改变数组元素使所有的...

2019-06-12 13:38:00 142

转载 Leetcode题解——算法思想之动态规划

斐波那契数列1. 爬楼梯2. 强盗抢劫3. 强盗在环形街区抢劫4. 信件错排5. 母牛生产矩阵路径1. 矩阵的最小路径和2. 矩阵的总路径数数组区间1. 数组区间和2. 数组中等差递增子区间的个数分割整数1. 分割整数的最大乘积2. 按平方数来分割整数3. 分割整数构成字母字符串最长递...

2019-06-12 13:35:00 372

转载 Leetcode题解——算法思想之搜索

BFS1. 计算在网格中从原点到特定点的最短路径长度2. 组成整数的最小平方数数量3. 最短单词路径DFS1. 查找最大的连通面积2. 矩阵中的连通分量数目3. 好友关系的连通分量数目4. 填充封闭区域5. 能到达的太平洋和大西洋的区域Backtracking1. 数字键盘组合2. IP 地址划分3. 在矩阵中寻找字...

2019-06-12 13:34:00 238

转载 Leetcode题解——算法思想之分治

1. 给表达式加括号2. 不同的二叉搜索树1. 给表达式加括号241. Different Ways to Add Parentheses (Medium)Input: "2-1-1".((2-1)-1) = 0(2-(1-1)) = 2Output : [0, 2]public List<Integer> diff...

2019-06-12 13:32:00 134

转载 Leetcode题解——算法思想之二分查找

1. 求开方2. 大于给定元素的最小元素3. 有序数组的 Single Element4. 第一个错误的版本5. 旋转数组的最小数字6. 查找区间正常实现Input : [1,2,3,4,5]key : 3return the index : 2public int binarySearch(int[] nums, int key)...

2019-06-12 13:31:00 316

转载 Leetcode题解——算法思想之贪心思想

1. 分配饼干2. 不重叠的区间个数3. 投飞镖刺破气球4. 根据身高和序号重组队列5. 买卖股票最大的收益6. 买卖股票的最大收益 II7. 种植花朵8. 判断是否为子序列9. 修改一个数成为非递减数组10. 子数组最大的和11. 分隔字符串使同种字符出现在一起保证每次操作都是局部最优的,并且最后得到的结果是全局最优的。1. 分配...

2019-06-12 13:30:00 315

转载 Leetcode题解——算法思想之排序

快速选择堆1. Kth Element桶排序1. 出现频率最多的 k 个元素2. 按照字符出现次数对字符串排序荷兰国旗问题1. 按颜色进行排序快速选择用于求解 Kth Element 问题,也就是第 K 个元素的问题。可以使用快速排序的 partition() 进行实现。需要先打乱数组,否则最坏情况下时间...

2019-06-12 13:29:00 152

转载 Leetcode题解——算法思想之双指针

1. 有序数组的 Two Sum2. 两数平方和3. 反转字符串中的元音字符4. 回文字符串5. 归并两个有序数组6. 判断链表是否存在环7. 最长子序列双指针主要用于遍历数组,两个指针指向不同的元素,从而协同完成任务。1. 有序数组的 Two SumLeetcode :167. Two Sum II - Input array is sort...

2019-06-12 13:27:00 94

转载 剑指offer题解——(60~68)

60. n 个骰子的点数61. 扑克牌顺子62. 圆圈中最后剩下的数63. 股票的最大利润64. 求 1+2+3+...+n65. 不用加减乘除做加法66. 构建乘积数组67. 把字符串转换成整数68. 树中两个节点的最低公共祖先60. n 个骰子的点数Lintcode题目描述把 n 个骰子仍在地上,求点数和为 s 的概率。...

2019-06-12 13:22:00 261

转载 剑指offer题解——(50~59)

50. 第一个只出现一次的字符位置51. 数组中的逆序对52. 两个链表的第一个公共结点53. 数字在排序数组中出现的次数54. 二叉查找树的第 K 个结点55.1 二叉树的深度55.2 平衡二叉树56. 数组中只出现一次的数字57.1 和为 S 的两个数字57.2 和为 S 的连续正数序列58.1 翻转单词顺序列58.2 左旋转字符串...

2019-06-12 13:21:00 200

转载 剑指offer题解——(40~49)

40. 最小的 K 个数41.1 数据流中的中位数41.2 字符流中第一个不重复的字符42. 连续子数组的最大和43. 从 1 到 n 整数中 1 出现的次数44. 数字序列中的某一位数字45. 把数组排成最小的数46. 把数字翻译成字符串47. 礼物的最大价值48. 最长不含重复字符的子字符串49. 丑数40. 最小的 K 个数N...

2019-06-12 13:20:00 182

转载 剑指offer题解——(30~39)

30. 包含 min 函数的栈31. 栈的压入、弹出序列32.1 从上往下打印二叉树32.2 把二叉树打印成多行32.3 按之字形顺序打印二叉树33. 二叉搜索树的后序遍历序列34. 二叉树中和为某一值的路径35. 复杂链表的复制36. 二叉搜索树与双向链表37. 序列化二叉树38. 字符串的排列39. 数组中出现次数超过一半的数字...

2019-06-12 13:19:00 144

转载 剑指offer题解——(20~29)

20. 表示数值的字符串21. 调整数组顺序使奇数位于偶数前面22. 链表中倒数第 K 个结点23. 链表中环的入口结点24. 反转链表25. 合并两个排序的链表26. 树的子结构27. 二叉树的镜像28 对称的二叉树29. 顺时针打印矩阵20. 表示数值的字符串NowCoder题目描述true"+100""5e2"...

2019-06-12 13:18:00 79

转载 剑指offer题解——(10~19)

10.1 斐波那契数列10.2 矩形覆盖10.3 跳台阶10.4 变态跳台阶11. 旋转数组的最小数字12. 矩阵中的路径13. 机器人的运动范围14. 剪绳子15. 二进制中 1 的个数16. 数值的整数次方17. 打印从 1 到最大的 n 位数18.1 在 O(1) 时间内删除链表节点18.2 删除链表中重复的结点19. 正则表...

2019-06-12 13:17:00 138

转载 剑指offer题解——(3~9)

3. 数组中重复的数字4. 二维数组中的查找5. 替换空格6. 从尾到头打印链表7. 重建二叉树8. 二叉树的下一个结点9. 用两个栈实现队列3. 数组中重复的数字NowCoder题目描述在一个长度为 n 的数组里的所有数字都在 0 到 n-1 的范围内。数组中某些数字是重复的,但不知道有几个数字是重复的,也不知道每个数字重复几次。请找出数...

2019-06-12 13:15:00 144

转载 Socket

一、I/O 模型阻塞式 I/O非阻塞式 I/OI/O 复用信号驱动 I/O异步 I/O五大 I/O 模型比较二、I/O 复用selectpoll比较epoll工作模式应用场景参考资料一、I/O 模型一个输入操作通常包括两个阶段:等待数据准备好从内核向进程复制数据对于一个套接字上的输入操...

2019-06-12 13:05:00 89

转载 HTTP详解

一 、基础概念URI请求和响应报文二、HTTP 方法GETHEADPOSTPUTPATCHDELETEOPTIONSCONNECTTRACE三、HTTP 状态码1XX 信息2XX 成功3XX 重定向4XX 客户端错误5XX 服务器错误四、HTTP 首部通用首部字段请求首部字...

2019-06-12 13:03:00 175

转载 计算机网络-应用层

域名系统文件传送协议动态主机配置协议远程登录协议电子邮件协议1. SMTP2. POP33. IMAP常用端口Web 页面请求过程1. DHCP 配置主机信息2. ARP 解析 MAC 地址3. DNS 解析域名4. HTTP 请求页面域名系统DNS 是一个分布式数据库,提供了主机名和 IP 地址...

2019-06-12 13:02:00 75

空空如也

空空如也

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

TA关注的人

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