自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(38)
  • 资源 (28)
  • 问答 (1)
  • 收藏
  • 关注

原创 websocket开发实时通信遇坑记——心跳停止

用h5+app websocket开发的聊天项目,为了保持实时在线,客户端每5s向服务器发送心跳消息,用setInterval函数定时向后台发送心跳,结果发现setInterval函数在应用程序进入后台后隔一段时间会休眠,导致我心跳发送不过去,服务器就判定我离线,这个梗无解? //4. 定时发送心跳,获取未读信息 window.clearInterval(CHAT.keepAliv...

2020-02-25 08:54:43 723

原创 LeetCode765. 情侣牵手

N 对情侣坐在连续排列的 2N 个座位上,想要牵到对方的手。 计算最少交换座位的次数,以便每对情侣可以并肩坐在一起。 一次交换可选择任意两人,让他们站起来交换座位。人和座位用 0 到 2N-1 的整数表示,情侣们按顺序编号,第一对是 (0, 1),第二对是 (2, 3),以此类推,最后一对是 (2N-2, 2N-1)。这些情侣的初始座位 row[i] 是由最初始坐在第 i 个座位上的人决定的...

2019-06-09 19:49:39 434

原创 LeetCode329. 矩阵中的最长递增路径

给定一个整数矩阵,找出最长递增路径的长度。对于每个单元格,你可以往上,下,左,右四个方向移动。 你不能在对角线方向上移动或移动到边界外(即不允许环绕)。示例 1:输入: nums =[[9,9,4],[6,6,8],[2,1,1]]输出: 4解释: 最长递增路径为 [1, 2, 6, 9]。示例 2:输入: nums =[[3,4,5],[3,2,6],[2,2,1...

2019-06-09 18:11:37 223

原创 LeetCode174. 地下城游戏

一些恶魔抓住了公主(P)并将她关在了地下城的右下角。地下城是由 M x N 个房间组成的二维网格。我们英勇的骑士(K)最初被安置在左上角的房间里,他必须穿过地下城并通过对抗恶魔来拯救公主。骑士的初始健康点数为一个正整数。如果他的健康点数在某一时刻降至 0 或以下,他会立即死亡。有些房间由恶魔守卫,因此骑士在进入这些房间时会失去健康点数(若房间里的值为负整数,则表示骑士将损失健康点数);其他房间...

2019-06-09 17:37:16 345

原创 LeetCode124. 二叉树中的最大路径和

给定一个非空二叉树,返回其最大路径和。本题中,路径被定义为一条从树中任意节点出发,达到任意节点的序列。该路径至少包含一个节点,且不一定经过根节点。示例 1:输入: [1,2,3] 1 / \ 2 3输出: 6示例 2:输入: [-10,9,20,null,null,15,7]-10/ 9 20/ 15 7输出: 42思路很简单,就是二叉树的遍历,...

2019-06-09 16:06:59 123

原创 LeetCode335. 路径交叉

给定一个含有 n 个正数的数组 x。从点 (0,0) 开始,先向北移动 x[0] 米,然后向西移动 x[1] 米,向南移动 x[2] 米,向东移动 x[3] 米,持续移动。也就是说,每次移动后你的方位会发生逆时针变化。编写一个 O(1) 空间复杂度的一趟扫描算法,判断你所经过的路径是否相交。示例 1:┌───┐│ │└───┼──>│输入: [2,1,1,2]输...

2019-06-09 15:44:22 177

原创 LeetCode829. 连续整数求和

给定一个正整数 N,试求有多少组连续正整数满足所有数字之和为 N?示例 1:输入: 5输出: 2解释: 5 = 5 = 2 + 3,共有两组连续整数([5],[2,3])求和后为 5。示例 2:输入: 9输出: 3解释: 9 = 9 = 4 + 5 = 2 + 3 + 4示例 3:输入: 15输出: 4解释: 15 = 15 = 8 + 7 = 4 + 5 + 6 = 1 ...

2019-06-09 15:05:54 265

原创 LeetCode902. 最大为 N 的数字组合

我们有一组排序的数字 D,它是 {‘1’,‘2’,‘3’,‘4’,‘5’,‘6’,‘7’,‘8’,‘9’} 的非空子集。(请注意,‘0’ 不包括在内。)现在,我们用这些数字进行组合写数字,想用多少次就用多少次。例如 D = {‘1’,‘3’,‘5’},我们可以写出像 ‘13’, ‘551’, ‘1351315’ 这样的数字。返回可以用 D 中的数字写出的小于或等于 N 的正整数的数目。示例...

2019-06-09 13:41:20 199

原创 LeetCode805. 数组的均值分割

给定的整数数组 A ,我们要将 A数组 中的每个元素移动到 B数组 或者 C数组中。(B数组和C数组在开始的时候都为空)返回true ,当且仅当在我们的完成这样的移动后,可使得B数组的平均值和C数组的平均值相等,并且B数组和C数组都不为空。示例:输入:[1,2,3,4,5,6,7,8]输出: true解释: 我们可以将数组分割为 [1,4,5,8] 和 [2,3,6,7], 他们的平均...

2019-06-09 13:39:03 413

原创 leetCode1000. 合并石头的最低成本

有 N 堆石头排成一排,第 i 堆中有 stones[i] 块石头。每次移动(move)需要将连续的 K 堆石头合并为一堆,而这个移动的成本为这 K 堆石头的总数。找出把所有石头合并成一堆的最低成本。如果不可能,返回 -1 。示例 1:输入:stones = [3,2,4,1], K = 2输出:20解释:从 [3, 2, 4, 1] 开始。合并 [3, 2],成本为 5,剩下 [...

2019-06-09 13:26:13 1034

原创 LeetCode834. 树中距离之和

给定一个无向、连通的树。树中有 N 个标记为 0…N-1 的节点以及 N-1 条边 。第 i 条边连接节点 edges[i][0] 和 edges[i][1] 。返回一个表示节点 i 与其他所有节点距离之和的列表 ans。示例 1:输入: N = 6, edges = [[0,1],[0,2],[2,3],[2,4],[2,5]]输出: [8,12,6,10,10,10]解释:如下为...

2019-06-09 13:18:23 419

原创 强化学习cartpole demo 源码阅读理解

cartpole.py文件下类成员变量的定义 def __init__(self): self.gravity = 9.8 self.masscart = 1.0 #车子的质量 self.masspole = 0.1 #杆的质量 self.total_mass = (self.masspole + self.masscart...

2019-04-21 22:07:21 918

原创 LeetCode950. 按递增顺序显示卡牌

牌组中的每张卡牌都对应有一个唯一的整数。你可以按你想要的顺序对这套卡片进行排序。最初,这些卡牌在牌组里是正面朝下的(即,未显示状态)。现在,重复执行以下步骤,直到显示所有卡牌为止:从牌组顶部抽一张牌,显示它,然后将其从牌组中移出。如果牌组中仍有牌,则将下一张处于牌组顶部的牌放在牌组的底部。如果仍有未显示的牌,那么返回步骤 1。否则,停止行动。返回能以递增顺序显示卡牌的牌组顺序。答案中...

2019-04-07 14:51:27 129

原创 强化学习简介及分类

最近在学习强化学习,因此开设强化学习专栏,记下强化学习的学习笔记,什么是强化学习?强化学习又称再励学习、评价学习,是一种重要的机器学习方法,但是在传统的机器学习方法中并没有提到强化学习,而在连接主义学习中,把学习算法分为三种类型,即非监督学习(unsupervised learning)、监督学习(supervised leaning)和强化学习。强化学习主要解决序贯决策问题。什么叫序贯决...

2019-04-03 10:45:20 1671

原创 LeetCode879.盈利计划

帮派里有 G 名成员,他们可能犯下各种各样的罪行。第 i 种犯罪会产生 profit[i] 的利润,它要求 group[i] 名成员共同参与。让我们把这些犯罪的任何子集称为盈利计划,该计划至少产生 P 的利润。有多少种方案可以选择?因为答案很大,所以返回它模 10^9 + 7 的值。示例 1:输入:G = 5, P = 3, group = [2,2], profit = [2,3]输...

2019-03-25 23:43:15 283

原创 LeetCode91.解码方法

一条包含字母 A-Z 的消息通过以下方式进行了编码:‘A’ -> 1‘B’ -> 2…‘Z’ -> 26给定一个只包含数字的非空字符串,请计算解码方法的总数。示例 1:输入: “12”输出: 2解释: 它可以解码为 “AB”(1 2)或者 “L”(12)。示例 2:输入: “226”输出: 3解释: 它可以解码为 “BZ” (2 26), “VF” (2...

2019-03-20 09:58:57 138

转载 LDA线性判别分析原理

转自:Dimensionality Reduction——LDA线性判别分析原理篇

2018-12-29 22:25:47 190

原创 Ubuntu下cmake找不到eigen坑

坑了一下午,现在整过来了,如果出现这个错,请在sudo下执行这个命令

2018-12-13 17:57:42 3755 4

原创 跑通第一个ros程序记录——创建ros项目

ubutun下安装完ros kinect环境,再装好PCL开发环境,用如下的方法创建ros项目: $ mkdir -p ~/test_project/src //创建文件夹 $ cd ~/test_project/src //定位到src $ catkin_init_workspace //对工作空间进行初始化编译:$ cd ~/catkin_...

2018-12-13 16:06:33 533

转载 机器学习算法原理之人工神经元和单层神经网络

转载:机器学习算法原理之人工神经元和单层神经网络

2018-12-08 11:33:45 162

原创 PCA算法的数学原理

转载自:PCA算法的数学原理

2018-12-02 18:25:27 214

原创 聚类算法总结

各种聚类算法的系统介绍和比较部分聚类算法原理及代码常见的六种聚类算法AP聚类算法聚类系列-谱聚类(spectral clustering百度百科:谱聚类

2018-12-02 18:16:14 236

转载 机器学习常见距离总结

转载自该文是对机器学习常见距离的总结,记录下来

2018-12-01 10:15:55 161

原创 LeetCode841. 钥匙和房间(深度优先的非递归解法)

有 N 个房间,开始时你位于 0 号房间。每个房间有不同的号码:0,1,2,…,N-1,并且房间里可能有一些钥匙能使你进入下一个房间。在形式上,对于每个房间 i 都有一个钥匙列表 rooms[i],每个钥匙 rooms[i][j] 由 [0,1,…,N-1] 中的一个整数表示,其中 N = rooms.length。 钥匙 rooms[i][j] = v 可以打开编号为 v 的房间。最初,除 ...

2018-11-20 11:05:12 648

原创 LeetCode144. 二叉树的前序遍历(非递归算法)

给定一个二叉树,返回它的 前序 遍历。示例:输入: [1,null,2,3]12/3输出: [1,2,3]进阶: 递归算法很简单,你可以通过迭代算法完成吗?/** * Definition for a binary tree node. * struct TreeNode { * int val; * TreeNode *left; * Tre...

2018-11-18 09:36:41 280

原创 LeetCode111. 二叉树的最小深度

给定一个二叉树,找出其最小深度。最小深度是从根节点到最近叶子节点的最短路径上的节点数量。说明: 叶子节点是指没有子节点的节点示例:给定二叉树 [3,9,20,null,null,15,7],3/ 9 20/ 15 7返回它的最小深度 2.思路:与求二叉树的最大深度思路一致,利用分治的思想/** * Definition for a binary tree no...

2018-11-15 11:55:39 141 1

原创 LeetCode 292. Nim游戏

你和你的朋友,两个人一起玩 Nim游戏:桌子上有一堆石头,每次你们轮流拿掉 1 - 3 块石头。 拿掉最后一块石头的人就是获胜者。你作为先手。你们是聪明人,每一步都是最优解。 编写一个函数,来判断你是否可以在给定石头数量的情况下赢得游戏。如果堆中有 4 块石头,那么你永远不会赢得比赛;因为无论你拿走 1 块、2 块 还是 3 块石头,最后一块石头总是会被你的朋友拿走。每次最多只能拿3块石头...

2018-11-15 11:51:15 1440

原创 LeetCode617. 合并二叉树

给定两个二叉树,想象当你将它们中的一个覆盖到另一个上时,两个二叉树的一些节点便会重叠。你需要将他们合并为一个新的二叉树。合并的规则是如果两个节点重叠,那么将他们的值相加作为节点合并后的新值,否则不为 NULL 的节点将直接作为新二叉树的节点。示例 1:输入:Tree 1 Tree 21 2/ \ ...

2018-11-15 11:36:33 70

原创 LeetCode226. 翻转二叉树

翻转一棵二叉树。示例:输入: 4/ 2 7/ \ / 1 3 6 9输出: 4/ 7 2/ \ / 9 6 3 1思路:递归/** * Definition for a binary tree node. * struct TreeNode { * int val; * TreeNode *l...

2018-11-15 11:26:36 90

原创 LeetCode669. 修剪二叉搜索树

给定一个二叉搜索树,同时给定最小边界L 和最大边界 R。通过修剪二叉搜索树,使得所有节点的值在[L, R]中 (R>=L) 。你可能需要改变树的根节点,所以结果应当返回修剪好的二叉搜索树的新的根节点。示例 1:输入:1/ 0 2L = 1R = 2输出:12示例 2:输入:3/ 0 42/1L = 1R = 3输出:3/2/1...

2018-11-15 11:18:24 127

原创 LeetCode110. 平衡二叉树

给定一个二叉树,判断它是否是高度平衡的二叉树。本题中,一棵高度平衡二叉树定义为:一个二叉树每个节点 的左右两个子树的高度差的绝对值不超过1。示例 1:给定二叉树 [3,9,20,null,null,15,7]3/ 9 20/ 15 7返回 true 。示例 2:给定二叉树 [1,2,2,3,3,null,null,4,4] 1 / \ 2 2/ ...

2018-11-15 11:08:58 92

翻译 LeetCode. 二叉树的最大深度

给定一个二叉树,找出其最大深度。二叉树的深度为根节点到最远叶子节点的最长路径上的节点数。说明: 叶子节点是指没有子节点的节点。示例:给定二叉树 [3,9,20,null,null,15,7],3/ 9 20/ 15 7返回它的最大深度 3 。思路:递归,分别求左右两颗子树的最大深度,一直求到把所有的叶子节点遍历完为止/** * Definition for a ...

2018-11-15 11:01:24 110

原创 LeetCode687. 最长同值路径

给定一个二叉树,找到最长的路径,这个路径中的每个节点具有相同值。 这条路径可以经过也可以不经过根节点。注意:两个节点之间的路径长度由它们之间的边数表示。示例 1:输入: 5 / \ 4 5 / \ \ 1 1 5输出:2示例 2:输入: 1 / \...

2018-11-15 10:55:23 215

原创 LeetCode 7. 反转整数

给定一个 32 位有符号整数,将整数中的数字进行反转。示例 1:输入: 123输出: 321示例 2:输入: -123输出: -321示例 3:输入: 120输出: 21注意:假设我们的环境只能存储 32 位有符号整数,其数值范围是 [−231, 231 − 1]。根据这个假设,如果反转后的整数溢出,则返回 0。参考:别志华-LeetCode - 颠倒整数我的代码:s...

2018-11-13 17:45:37 101

原创 LeetCode 83. 删除排序链表中的重复元素

给定一个排序链表,删除所有重复的元素,使得每个元素只出现一次。示例 1:输入: 1->1->2输出: 1->2示例 2:输入: 1->1->2->3->3输出: 1->2->3我给的解法是:/** * Definition for singly-linked list. * struct ListNode { * ...

2018-11-13 16:33:33 100

原创 LeetCode 452. 用最少数量的箭引爆气球

在二维空间中有许多球形的气球。对于每个气球,提供的输入是水平方向上,气球直径的开始和结束坐标。由于它是水平的,所以y坐标并不重要,因此只要知道开始和结束的x坐标就足够了。开始坐标总是小于结束坐标。平面内最多存在104个气球。一支弓箭可以沿着x轴从不同点完全垂直地射出。在坐标x处射出一支箭,若有一个气球的直径的开始和结束坐标为 xstart,xend, 且满足 xstart ≤ x ≤ xend...

2018-11-12 21:27:30 803

原创 LeetCode 236. 二叉树的最近公共祖先

给定一个二叉树, 找到该树中两个指定节点的最近公共祖先。百度百科中最近公共祖先的定义为:“对于有根树 T 的两个结点 p、q,最近公共祖先表示为一个结点 x,满足 x 是 p、q 的祖先且 x 的深度尽可能大(一个节点也可以是它自己的祖先)。”说明:所有节点的值都是唯一的。p、q 为不同节点且均存在于给定的二叉树中。个人思路在于先求出root到两个节点的路径上所需要路过的节点,分别用ve...

2018-11-12 09:06:45 140

原创 博客开篇

这是我的第一篇博客,我决定以后每学到点东西都要用博客记录下来,日积月累,慢慢取得进步。。。

2018-11-10 14:05:44 135

压缩感知算法.pdf

压缩感知算法.pdf

2020-08-11

C++Template电子书及代码

C++模版编程,C++Template书籍 + 代码资源,分享给大家一起学习学习

2018-10-10

游戏编程精粹8+源代码.part4

游戏编程精粹8+源代码,一共四个部分,这是第四部分

2014-05-22

游戏编程精粹8+源代码.part3

游戏编程精粹8+源代码,一共四个部分,这是第三部分

2014-05-22

游戏编程精粹8+源代码.part2

游戏编程精粹8+源代码,一共四个部分,这是第二部分

2014-05-22

游戏编程精粹8+源代码.part1

游戏编程精粹8+源代码,一共四个部分,这是第一部分

2014-05-22

游戏编程精粹7+源代码.part3

游戏编程精粹7+源代码,一共三个部分,这是第三部分

2014-05-22

游戏编程精粹7+源代码.part2

游戏编程精粹7+源代码,一共三个部分,这是第二部分

2014-05-22

游戏编程精粹7+源代码.part1

游戏编程精粹7+源代码,一共三个部分,这是第一部分

2014-05-22

游戏编程精粹6+源代码

游戏编程精粹6+源代码,一共四个部分,这是第四部分

2014-05-22

游戏编程精粹6+源代码.part3

游戏编程精粹6+源代码,一共四个部分,这是第三部分

2014-05-22

游戏编程精粹6+源代码.part2

游戏编程精粹6+源代码,一共四个部分,这是第二个部分

2014-05-22

游戏编程精粹6+源代码.part1

游戏编程精粹6+源代码,一共四个部分,这是第一部分

2014-05-22

游戏编程精粹5+源代码.part3

游戏编程精粹5+源代码,一共四部分,这是第三部分

2014-05-22

游戏编程精粹5+源代码.part2

游戏编程精粹5+源代码一共四个部分,这是第二部分

2014-05-22

游戏编程精粹5+源代码.part1

游戏编程精粹5+源代码,一共四个部分,这是第一部分

2014-05-22

游戏编程精粹5+源代码.part4

游戏编程精粹5+源代码,一共四个部分,这是第四部分

2014-05-22

游戏编程精粹4+源代码.part3

游戏编程精粹4+源代码,一共三个部分,这是第三部分

2014-05-22

游戏编程精粹4+源代码.part2

游戏编程精粹4+源代码,一共三个部分,这是第二部分

2014-05-22

游戏编程精粹4+源代码.part1

游戏编程精粹4+源代码,一共三个部分,这是第一部分

2014-05-22

游戏编程精粹3+源代码

游戏编程精粹3+源代码,一共三个部分,这是第二部分

2014-05-22

游戏编程精粹3 part3

游戏编程精粹3+源代码,一共三个部分,这是第三部分

2014-05-22

游戏编程精粹3

游戏编程精粹3+源代码,一共三个部分,这是第一部分

2014-05-22

游戏编程精粹1+源代码

游戏编程精粹1+源代码,非常好,非常不错

2014-05-21

游戏编程精粹2+源代码.part2.

游戏编程精粹2+源代码,一共有两个部分,这是第二部分

2014-05-21

游戏编程精粹2+源代码.part1

游戏编程精粹2+源代码.part1.rar ,一共两个部分,这是第一部分

2014-05-21

简易音乐播放器

简易android音乐播放器,用纯java解析mp3文件

2014-04-12

PHOTOSHOP特效制作电子教程

PHOTOSHOP特效制作电子教程,如何制作特效,这里应有尽有

2013-02-27

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

TA关注的人

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