自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

Apple_hzc的博客

陪伴是最长情的告白

  • 博客(98)
  • 收藏
  • 关注

转载 Java基础总结

一、数据类型包装类型缓存池二、String概览不可变的好处String, StringBuffer and StringBuilderString Poolnew String(“abc”)三、运算参数传递float 与 double隐式类型转换switch四、继承访问权限抽象类与接口super重写与重载五、Object 通用方法...

2018-10-25 10:03:28 193

原创 Java高并发秒杀平台(Redis + RabbitMQ)

Seconds-Kill本项目是一个模拟高并发环境下基于 SpringBoot 的秒杀购物平台。为了减少对数据库的直接访问,通过 Redis 实现了缓存优化;并通过 RabbitMQ 消息中间件来接收大量的并发请求,实现异步和削峰,然后再慢慢地更新数据库。最后通过 Jmeter 压测工具,可以很好地对比优化前后的 QPS…项目的源代码:基于 SpringBoot 的高并发秒杀平台quick-...

2019-06-16 20:05:12 8714 4

原创 实现一个简单的Spring框架

最近阅读了部分 Spring 的源码,想通过手写一个入门级的 Spring 来对 IOC 容器和 AOP 动态代理有一个更加深刻的理解,代码上传至 GitHub:simple-spring 。quick-startSpring 部分配置特性id 和 name配置是否允许 Bean 覆盖和循环依赖profile工厂模式生成 BeanFactoryBeanBeanWrapper初...

2019-05-15 16:13:46 1058

原创 一点感受

昨天和同学B聊天,他说研究生这个东西,就像围城,里面的人想出去,外面的人拼命地进来。还真是,从去年九月入学到现在,技术上学了很多东西,coding能力也提高不少,但其实对我而言研究生就是两年的自学时间,如果没有一个清晰的学习规划,读研意义不大,否则就只能挣扎于枯燥的干活和论文的研究。我不觉得自己是一个合格的研究生,我对研究、发表论文没什么兴趣,白天按着计划学习、上课,晚上刷刷leetcode、对看...

2019-03-04 19:44:59 676 1

原创 Java虚拟机学习笔记

GC算法与内存分配策略一、运行时数据区域二、可达性分析算法基本思路:通过一系列GC Roots(通常是一组特别管理的指向引用类型对象的指针)对象作为七点,从这些节点往下搜索,搜索经过的路径成为引用链。当一个对象到GC Roots不可达时,则证明此对象不可用,即可回收。在Java中,可作为GC Roots的对象包括以下几种:(GC管理的的区域是Java堆,虚拟机栈、方法区和本地方...

2019-01-10 16:14:24 309

原创 LeetCode-搜索专题总结

搜索深度优先搜索和广度优先搜索广泛运用于树和图中,但是它们的应用远远不止如此。BFS广度优先搜索一层一层地进行遍历,每层遍历都以上一层遍历的结果作为起点,遍历一个距离能访问到的所有节点。需要注意的是,遍历过的节点不能再次被遍历。第一层:0 -> {6,2,1,5}第二层:6 -> {4}2 -> {}1 -> {}5 -&am

2018-12-04 11:23:41 413 2

原创 LeetCode-数学专题总结

数学素数素数分解每一个数都可以分解成素数的乘积,例如 84 = 22 * 31 * 50 * 71 * 110 * 130 * 170 * …整除令 x = 2m0 * 3m1 * 5m2 * 7m3 * 11m4 * …令 y = 2n0 * 3n1 * 5n2 * 7n3 * 11n4 * …如果 x 整除 y(y mod x == 0),则对于所有 i,mi <= ni。...

2018-12-02 15:12:26 1088

原创 实现LRU算法的两种方法

一、LinkedHashMapLinkedHashMap 内部维护了一个双向链表,用来维护插入顺序或者 LRU(最近最久未使用)顺序。其中有一个属性——accessOrder,当一个节点被访问时,如果 accessOrder 为 true,则会将该节点移到链表尾部。也就是说指定为 LRU 顺序之后,在每次访问一个节点时,会将这个节点移到链表尾部,保证链表尾部是最近访问的节点,那么链表首部就...

2018-11-29 22:16:01 1084

转载 HashMap在JDK1.7与1.8有哪些区别?

一、HashMap的结构在JDK1.7和1.8的不同点1.JDK1.7用的是头插法,而JDK1.8及之后使用的都是尾插法,那么他们为什么要这样做呢?因为JDK1.7是用单链表进行的纵向延伸,当采用头插法就是能够提高插入的效率,但是也会容易出现逆序且环形链表死循环问题。但是在JDK1.8之后是因为加入了红黑树使用尾插法,能够避免出现逆序且链表死循环的问题。2.扩容后数据存储位置的计算...

2018-11-29 21:04:03 704

原创 吴恩达深度学习4-Week4课后作业2-Neural Style Transfer

一、Deeplearning-assignment在本节的学习中,我们将学习神经风格迁移(Neural Style Transfer)算法,通过该算法使得两张不同风格的图片融合成一张图片。问题描述:神经风格迁移算法是深度学习中的一种有趣的技术。正如下面的图片所示,算法将两种图片的风格特点融合在了一起。神经风格迁移:运用了一个预训练的卷积神经网络,这种将一个任务的特点运用到另一个任务...

2018-11-28 21:53:20 724

原创 吴恩达深度学习4-Week4课后作业1-Face Recognition

一、Deeplearning-assignment在本节的学习中,我们将学习建立一个人脸识别系统。人脸识别主要有以下两个类别:人脸鉴定:比如说在一些机场,通过一个系统扫描你的护照是否是你本人,来允许或拒绝你通过安检。 人脸识别:比如在一个公司入口处扫描你的人脸来识别你的身份。FaceNet通过学习一个神经网络将一个人脸图像编码成具有128个数字的向量,通过比较两个向量,能推测两个图...

2018-11-27 20:24:55 600

原创 LeetCode-二叉树总结(三)

BST二叉查找树(BST):根节点大于等于左子树所有节点,小于等于右子树所有节点。二叉查找树中序遍历有序。修剪二叉查找树669. Trim a Binary Search Tree (Easy)Input: 3 / \ 0 4 \ 2 / 1 L = 1 R = 3Output: 3 / 2 ...

2018-11-27 17:11:58 253

原创 问答平台

从八月底到昨天,整整三个月,边看视频学技术栈边写代码,每天晚上挤时间完成了这个项目,还是想为明年实习做一个项目上的准备。最初是想做一个深度学习方面的项目,当时对这方面基础知识的储备还不够,如今也还在看视频和文档学习,因此选择了web项目。其实对于以后工作的方向到底是算法还是研发现在也说不清楚,等明年初根据自己的学习情况再做进一步的打算。接下来学校的课越来越集中,各种考试也陆续而至,深度学习也还在...

2018-11-26 18:20:23 4002 35

原创 LeetCode-二叉树总结(二)

层次遍历使用BFS进行层次遍历。不需要使用两个队列来分别存储当前层的节点和下一层的节点,因为在开始遍历一层的节点时,当前队列中的节点数就是当前层的节点数,只要控制遍历这么多节点数,就能保证这次遍历的都是当前层的节点。一棵树每层节点的平均数637. Average of Levels in Binary Tree (Easy)class Solution { public List&...

2018-11-25 17:44:52 957 2

原创 吴恩达深度学习4-Week3课后作业-自主驾驶-汽车检测

一、Deeplearning-assignment在本周的作业中,将通过使用大的YOLO模型来了解对象检测。您将学习:在一个汽车检测数据集上使用对象检测 处理边界框问题陈述:你正在开一辆自驾车。作为这个项目的重要组成部分,您首先要建立一个汽车检测系统。为了收集数据,你已经把摄像头安装在汽车的引擎盖上(意思是前面),在驾驶时每隔几秒就会拍摄前方的道路。您已经将所有这些图像收集到一...

2018-11-23 19:44:23 1072

原创 LeetCode-二叉树总结(一)

二叉树递归一棵树要么是空树,要么有两个指针,每个指针指向一棵树。树是一种递归结构,很多树的问题可以使用递归来处理。树的高度104. Maximum Depth of Binary Tree (Easy)class Solution { public int maxDepth(TreeNode root) { if (null == root) { ...

2018-11-23 11:03:38 231

原创 LeetCode-动态规划总结(四)

股票交易需要冷却期的股票交易121.Best Time to Buy and Sell Stock题目描述:只有一次交易机会,找出使得利润最大的价值。class Solution { public int maxProfit(int[] prices) { if (null == prices || 0 == prices.length) { ...

2018-11-19 19:23:45 281

原创 LeetCode-动态规划总结(三)

最长公共子序列对于两个子序列 S1 和 S2,找出它们最长的公共子序列。定义一个二维数组 dp 用来存储最长公共子序列的长度,其中 dp[i][j] 表示 S1 的前 i 个字符与 S2 的前 j 个字符最长公共子序列的长度。考虑 S1i 与 S2j 值是否相等,分为两种情况:当 S1i==S2j 时,那么就能在 S1 的前 i-1 个字符与 S2 的前 j-1 个字符最长公共子序列的基础...

2018-11-18 18:45:36 247

原创 LeetCode-二分查找的变种总结

二分查找二分查找作为一种基础算法,在面试和笔试中也是经常遇到,然而这一算法在不同的情形中也有不同的表现形式,下面是一些二分查找算法的变种总结。(以下代码均已实现)时间复杂度:二分查找也称为折半查找,每次都能将查找区间减半,这种折半特性的算法时间复杂度为 O(logN)。mid的计算:有两种计算中值 m 的方式:m = (l + h) / 2 m = l + (h - l)...

2018-11-17 19:05:01 446

原创 吴恩达深度学习4-Week2课后作业2-残差网络

一、Deeplearning-assignment在本次作业中,我们将学习如何通过残差网络(ResNets)建立更深的卷及网络。理论上,深层次的网络可以表示非常复杂的函数,但在实践中,他们是很难创建和训练的。残差网络使得建立比以前更深层次的网络成为可能。对于残差网络的详细讲解,具体可参考该论文:Deep Residual Learning for Image Recognition在这个任...

2018-11-16 19:56:29 498

原创 LeetCode-动态规划总结(二)

最长递增子序列已知一个序列 {S1, S2,…,Sn},取出若干数组成新的序列 {Si1, Si2,…, Sim},其中 i1、i2 … im 保持递增,即新序列中各个数仍然保持原数列中的先后顺序,称新序列为原序列的一个 子序列 。如果在子序列中,当下标 ix > iy 时,Six > Siy,称子序列为原序列的一个 递增子序列 。定义一个数组 dp 存储最长递增子序列的长度,d...

2018-11-16 18:15:00 234

原创 LeetCode-动态规划总结(一)

动态规划递归和动态规划都是将原问题拆成多个子问题然后求解,他们之间最本质的区别是,动态规划保存了子问题的解,避免重复计算。斐波那契数列爬楼梯70. Climbing Stairs (Easy)题目描述:有 N 阶楼梯,每次可以上一阶或者两阶,求有多少种上楼梯的方法。定义一个数组 dp 存储上楼梯的方法数(为了方便讨论,数组下标从 1 开始),dp[i] 表示走到第 i 个楼梯的方法数目...

2018-11-15 20:52:28 468

原创 吴恩达深度学习4-Week2课后作业1-Keras-Happy House

一、Deeplearning-assignment在本周的任务中,将开始学习使用Keras:学习使用Keras,这是一个用Python编写的高级神经网络API(编程框架),能够在包括TensorFlow和CNTK在内的几个底层框架上运行。 看看如何在几个小时内建立一个深度学习算法。为什么我们使用Keras?Keras的开发是为了让深度学习的工程师能够非常快速地建立和尝试不同的模型。就像...

2018-11-15 18:49:00 421 1

原创 LeetCode-数组与矩阵总结

数组与矩阵把数组中的 0 移到末尾283. Move Zeroes (Easy)For example, given nums = [0, 1, 0, 3, 12], after calling your function, nums should be [1, 3, 12, 0, 0].class Solution { public void moveZeroes(int[] ...

2018-11-13 10:17:32 890

原创 LeetCode-Find the Duplicate Number

一、Description题目描述:给定n + 1个数字,这些数字的范围在1 - n之间,在这些数字中有一个出现不止一次的数字,找出这个数字。要求用O(1)的空间和少于O(n^2)的时间复杂度。二、Analyzation遍历这个数组,对于每个数字x,nums[x - 1]上的数字如果为正,则令其为相反数;如果nums[x - 1]上的数为负,则表示前面的数字中已经出现过当前数字...

2018-11-12 18:36:41 163

原创 LeetCode-Minimum Area Rectangle

一、Description题目描述:给定一些点集,找出由这些组成的面积最小的矩形,矩形的长和宽分别平行于x、y轴。如果不存在这样的矩形,返回0。Example 1:Input: [[1,1],[1,3],[3,1],[3,3],[2,2]]Output: 4Example 2:Input: [[1,1],[1,3],[3,1],[3,3],[4,1],[4,3]]...

2018-11-11 16:20:32 162

原创 吴恩达深度学习4-Week1课后作业2-运用tensorflow实现卷积网络

一、Deeplearning-assignment在本次作业中,我们将学习如何通过tensorflow框架实现一个简单的卷积神经网络。现在有一个数据集,对应着6张图片的数据:我们将通过tensorflow做出一个卷积模型,并通过它对数据集进行训练,提高其在测试集上的准确率。以下是tensorflow model的步骤:创建createholders 对参数进行初始化 实...

2018-11-10 19:02:15 640 1

原创 吴恩达深度学习4-Week1课后作业1-卷积模型Step by Step

一、Deeplearning-assignment在本次任务中,我们将学习用numpy实现卷积(CONV)层和池化(POOL)层,由于大多数深度学习工程师不需要关注反向传递的细节,而且卷积网络的反向传递很复杂,所以在本次作业中只讨论关于前向传播的处理细节。用 python 来实现每个函数,在下次任务用 TensorFlow 中等价的函数构造如下模型:对于每个前向传播,都有相应的反向...

2018-11-10 09:13:48 590

原创 LeetCode-栈和队列总结

栈和队列栈和队列是很重要的数据结构,栈是先进后出,队列是先进先出,可以用两个栈实现队列,也可以用一个队列实现栈,这些基本操作都应该掌握熟练。数组中元素与下一个比它大的元素之间的距离739. Daily Temperatures (Medium)Input: [73, 74, 75, 71, 69, 72, 76, 73]Output: [1, 1, 4, 2, 1, 1, 0, 0]...

2018-11-09 18:48:32 187

原创 LeetCode-链表总结

链表链表在面试中手写代码的几率很大,也是十分重要的一种数据结构,本身并不复杂,但通过各种形式的题型可以看出一个人思路的严谨性。找出两个链表的交点160. Intersection of Two Linked Lists (Easy)A: a1 → a2 ↘ c1 → c2 → c3 ...

2018-11-08 19:10:52 184

转载 LeetCode-位运算总结

位运算1. 基本原理0s 表示一串 0,1s 表示一串 1。x ^ 0s = x x & 0s = 0 x | 0s = xx ^ 1s = ~x x & 1s = x x | 1s = 1sx ^ x = 0 x & x = x x | x = x利用 x ^ 1s = ~x 的特点,可以将位级...

2018-11-07 19:16:50 566

原创 LeetCode-Different Ways to Add Parentheses

一、Description题目描述:给一个字符串,任意加括号,输出所有可能的取值。Example 1:Input: "2-1-1"Output: [0, 2]Explanation: ((2-1)-1) = 0 (2-(1-1)) = 2Example 2:Input: "2*3-4*5"Output: [-34, -14, -10, -10, 10]Expla...

2018-11-06 18:31:50 143

原创 LeetCode-Single Element in a Sorted Array

一、Description题目描述:在一个有序数组中找出只出现一次的数字,要求时间复杂度为O(log n) 。Example 1:Input: [1,1,2,3,3,4,4,8,8]Output: 2Example 2:Input: [3,3,7,7,10,11,11]Output: 10二、Analyzation方法一:如果没有时间复杂度的要求,可以考虑...

2018-11-06 17:21:26 165

原创 复盘2018与规划2019

前言一转眼又快到年底了,不知道各位的年计划完成得怎么样了,对马上到来的2019又有什么新的期许。本来打算下个月写这篇文章,但最近陆陆续续又增加了新课,日常除了上课看书就是接踵而至的考试,大概没什么时间,现在就复盘一下2018期待2019吧。今年对我而言,是意义非凡的一年,更是我成长最快的一年。大四上半年,主要还是考研复试和本科毕业。经历了去年大半年的复习备考,从初试到复试,很幸运地来...

2018-11-05 20:42:08 825 7

原创 LeetCode-Lowest Common Ancestor of a Binary Tree

一、Description题目描述:给定一个二叉树和两个结点p和q,找出p和q的最近公共祖先。二、Analyzation通过遍历分别找到从根节点到p和q的路径,放入一个栈中。如果两个栈的大小相同,则同时出栈直到两个栈出栈的结点值相同,则为最近公共祖先,如果两个栈的大小不同(p和q不在同一层),则大的那个栈出栈直到和另一个栈的大小相同,然后一起出栈直到结点值相同。三、Accepted...

2018-11-04 19:08:23 143

原创 LeetCode-Shortest Bridge

一、Description题目描述:给定一个二维数组,所有值为1的相邻元素(上下左右相邻)构成一个岛,即相互连通。在给出的数组中存在两个岛,求使得这两个岛连通需要最少将多少个数字0变为1。二、Analyzation首先通过深度优先搜索将一个岛的所有结点加入到一个队列中,并全部标记为已访问,然后依次从队列中取出Point,再次遍历(向上下左右四个方向探索),一旦遇到数字1,则返回此时的c...

2018-11-04 17:41:28 357

原创 LeetCode-All Nodes Distance K in Binary Tree

一、Description题目描述:给定一个二叉树,一个target结点,一个K,找出所有离target结点的距离为K的所有结点,返回一个list。Example 1:Input: root = [3,5,1,6,2,0,8,null,null,7,4], target = 5, K = 2Output: [7,4,1]二、Analyzation从target结点开始...

2018-11-03 20:39:50 147

原创 LeetCode-House Robber III

一、Description题目描述:从根节点出发,返回一个最大的结点和,要求结点不能相邻。Example 1:Input: [3,2,3,null,3,null,1] 3 / \ 2 3 \ \ 3 1Output: 7 Explanation: Maximum amount of money the thief can...

2018-11-03 19:50:59 121

原创 吴恩达深度学习2-Week3课后作业-Tensorflow

一、Deeplearning-assignment到目前为止,我们一直使用numpy来建立神经网络。这次作业将深入学习框架,可以更容易地建立神经网络。TensorFlow,PaddlePaddle,Torch,Caffe,Keras等机器学习框架可以显著地加速机器学习开发。这些框架有很多文档,可以随意阅读。在本次任务中,将学习如何在TensorFlow中执行以下操作:初始化变量 开始...

2018-11-03 17:33:02 877

原创 LeetCode-Maximum Width of Binary Tree

一、Description题目描述:给定一个二叉树,返回它的最大宽度。最大宽度是这么定义的:即一层中最右结点与最左结点之间的长度。Example 1:Input: 1 / \ 3 2 / \ \ 5 3 9 Output: 4Explanation: The...

2018-11-03 09:13:56 125

空空如也

空空如也

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

TA关注的人

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