自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 Go语言中Goroutine如何退出

在Go语言中,启动一个协程Goroutine很方便,一行代码的事儿,比如go runTask()。但是如果runTask要在运行中途退出呢?有人说用channel,那么如何在web请求中,每次拿到那个channel呢?没写过的人,一时半会还真想不清楚。我们在web请求中,启动了一个goroutine来运行某个任务,就像这样 go runTask()。它的内部是一个for循环,循环获取数据,同时检查任务的运行状态。如果不再是运行状态了,就可以退出了。如果我们的流程是这样的,启动任务A,假设它跑在gorou

2020-07-23 19:16:21 1576

原创 leetcode 探索 哈希表 快乐数

题目编写一个算法来判断一个数 n 是不是快乐数。「快乐数」定义为:对于一个正整数,每一次将该数替换为它每个位置上的数字的平方和,然后重复这个过程直到这个数变为 1,也可能是 无限循环 但始终变不到 1。如果 可以变为 1,那么这个数就是快乐数。如果 n 是快乐数就返回 True ;不是,则返回 False 。示例:输入:19输出:true解释:1^2 + 9^2 = 828^2 + 2^2 = 686^2 + 8^2 = 1001^2 + 0^2 + 0^2 = 1分析这

2020-07-11 08:58:45 162

原创 leetcode 探索 哈希表 两个数组的交集

题目给定两个数组,编写一个函数来计算它们的交集。示例 1:输入:nums1 = [1,2,2,1], nums2 = [2,2]输出:[2]示例 2:输入:nums1 = [4,9,5], nums2 = [9,4,9,8,4]输出:[9,4]说明:输出结果中的每个元素一定是唯一的。我们可以不考虑输出结果的顺序。分析通过遍历一遍数组1,然后加入到map中。这样再遍历数组2,遇到数组1中有的,就加入结果集,同时要注意到题目要求结果集是唯一的,那么我们在遇到过之后,就要把map中

2020-07-11 08:50:41 190

原创 leetcode 探索 哈希表 只出现一次的数字

题目给定一个非空整数数组,除了某个元素只出现一次以外,其余每个元素均出现两次。找出那个只出现了一次的元素。说明:你的算法应该具有线性时间复杂度。 你可以不使用额外空间来实现吗?示例 1:输入: [2,2,1]输出: 1示例 2:输入: [4,1,2,1,2]输出: 4分析此题有两种解法,第一种借用辅助空间来实现,遍历一遍记录每个元素出现的次数。再遍历一次,找出只出现一次的元素。第二种就比较巧妙了,使用了位运算异或,即所有数如果相同,那么他们的结果就会为0,因为相同。所以把所有

2020-07-11 08:28:34 176

原创 leetcode探索 哈希表 存在重复元素

题目给定一个整数数组,判断是否存在重复元素。如果任意一值在数组中出现至少两次,函数返回 true 。如果数组中每个元素都不相同,则返回 false 。示例 1:输入: [1,2,3,1]输出: truehttps://leetcode-cn.com/explore/learn/card/hash-table/204/practical-application-hash-set/805/分析使用hashmap,循环时候,判断当前数值是否已经在map中了。解法func containsDup

2020-07-11 08:21:29 247

原创 leetcode 探索 队列与栈 用队列实现栈

题目使用队列实现栈的下列操作:push(x) – 元素 x 入栈pop() – 移除栈顶元素top() – 获取栈顶元素empty() – 返回栈是否为空分析用go里的slice就好了。解法type MyStack struct { Space []int}/** Initialize your data structure here. */func Constructor() MyStack { return MyStack{}}/** Push ele

2020-07-08 23:36:17 110

原创 leetcode 探索 队列与栈 用栈实现队列

题目使用栈实现队列的下列操作:push(x) – 将一个元素放入队列的尾部。pop() – 从队列首部移除元素。peek() – 返回队列首部的元素。empty() – 返回队列是否为空。分析用两个栈即可实现队列,push不变,只要在pop时候把push的栈,导入到另外一个栈,即实现了栈的倒置,也就是队列。A栈后进先出,比如push进去1 2 3 4 5,那么出栈就是5 4 3 2 1。将出栈的元素再入栈到栈B,则变成5 4 3 2 1。所以1又到了第一位。解法type MyQueue s

2020-07-08 23:29:06 115

原创 leetcode 探索队列与栈 克隆图

题目给你无向 连通 图中一个节点的引用,请你返回该图的 深拷贝(克隆)。图中的每个节点都包含它的值 val(int) 和其邻居的列表(list[Node])。class Node { public int val; public List<Node> neighbors;}测试用例格式:简单起见,每个节点的值都和它的索引相同。例如,第一个节点值为 1(val = 1),第二个节点值为 2(val = 2),以此类推。该图在测试用例中使用邻接列表表示。邻接列表 是用

2020-07-07 08:53:11 136

原创 leetcode 探索队列与栈 逆波兰表达式

题目根据 逆波兰表示法,求表达式的值。有效的运算符包括 +, -, *, / 。每个运算对象可以是整数,也可以是另一个逆波兰表达式。说明:整数除法只保留整数部分。给定逆波兰表达式总是有效的。换句话说,表达式总会得出有效数值且不存在除数为 0 的情况。示例 1:输入: [“2”, “1”, “+”, “3”, “*”]输出: 9解释: 该算式转化为常见的中缀算术表达式为:((2 + 1) * 3) = 9分析逆波兰表达式,其实就是扫描到运算符的时候,就从栈里弹出两个元素进行计算,计算

2020-07-03 08:36:59 105

原创 leetcode 探索队列与栈 每日温度

题目请根据每日 气温 列表,重新生成一个列表。对应位置的输出为:要想观测到更高的气温,至少需要等待的天数。如果气温在这之后都不会升高,请在该位置用 0 来代替。例如,给定一个列表 temperatures = [73, 74, 75, 71, 69, 72, 76, 73],你的输出应该是 [1, 1, 4, 2, 1, 1, 0, 0]。提示:气温 列表长度的范围是 [1, 30000]。每个气温的值的均为华氏度,都是在 [30, 100] 范围内的整数。分析这个题第一个想法是双指针,即从左侧向

2020-07-03 08:33:39 218

原创 leetcode探索队列与栈 有效的括号

题目给定一个只包括 ‘(’,’)’,’{’,’}’,’[’,’]’ 的字符串,判断字符串是否有效。有效字符串需满足:左括号必须用相同类型的右括号闭合。左括号必须以正确的顺序闭合。注意空字符串可被认为是有效字符串。示例 1:输入: “()”输出: true示例 2:输入: “()[]{}”输出: true分析这题比较简单,使用栈的LIFO的特性,如果是左边的括号就进栈,如果是右边的括号,就与栈顶元素比较,是他的另外一边,就弹栈。继续前进,利用了括号成对的特性,即最内层的左括号

2020-07-03 08:26:40 131

原创 leetcode 探索队列与栈 最小栈

题目设计一个支持 push ,pop ,top 操作,并能在常数时间内检索到最小元素的栈。push(x) —— 将元素 x 推入栈中。pop() —— 删除栈顶的元素。top() —— 获取栈顶元素。getMin() —— 检索栈中的最小元素。示例:输入:[“MinStack”,“push”,“push”,“push”,“getMin”,“pop”,“top”,“getMin”][[],[-2],[0],[-3],[],[],[],[]]输出:[null,null,null,nu

2020-07-03 08:21:26 126

原创 leetcode 探索 队列与栈 完全平方数

题目给定正整数 n,找到若干个完全平方数(比如 1, 4, 9, 16, …)使得它们的和等于 n。你需要让组成和的完全平方数的个数最少。示例 1:输入: n = 12输出: 3解释: 12 = 4 + 4 + 4.示例 2:输入: n = 13输出: 2解释: 13 = 4 + 9.分析仍然是广度优先搜索BFS,注意step的增加,要每一轮或者说每一圈搜索结束后,再增长。BFS三大核心,visited,queue,step。解法func numSquares(n int

2020-07-03 00:22:46 164

原创 leetcode 探索 队列与栈 打开转盘锁

题目你有一个带有四个圆形拨轮的转盘锁。每个拨轮都有10个数字: ‘0’, ‘1’, ‘2’, ‘3’, ‘4’, ‘5’, ‘6’, ‘7’, ‘8’, ‘9’ 。每个拨轮可以自由旋转:例如把 ‘9’ 变为 ‘0’,‘0’ 变为 ‘9’ 。每次旋转都只能旋转一个拨轮的一位数字。锁的初始数字为 ‘0000’ ,一个代表四个拨轮的数字的字符串。列表 deadends 包含了一组死亡数字,一旦拨轮的数字和列表里的任何一个元素相同,这个锁将会被永久锁定,无法再被旋转。字符串 target 代表可以解锁的数

2020-07-01 00:01:06 108

手势字母A检测handGestureDetection

手势字母A检测handGestureDetection,opencv c++代码

2012-09-03

物联网智能家居发展分析

智能家居作为家庭信息化的实现方式,已成为社会信息化发展的重要组成部分,物联网因其巨大的应用前景,将是智能家居产业发展过程中一个比较现实的突破口,对智能家居产业的发展具有重大意义。文章分析了目前智能家居发展现状,给出了发展建议,为物联网智能家居产业的发展提供参考。

2012-09-03

智能家居市场分析及发展趋势

智能家居市场分析及发展趋势来源:中国安防行业网

2012-09-03

智能家居中视频监控系统设计

针对智能家居的远程监控问题,提出了一种基于ARM,Linux和计算机网络的视频监控系统,该系统以嵌入式Linux和嵌入式微控制器ARM 为核心平台,通过web服务器将USB摄像头采集的视频信号经过网络传输,完成对家居的远程视频监控任务。

2012-09-03

中国智能家居的现状及发展趋势

中国智能家居的现状和发展趋势,论述了智能家居的基本概念。介绍了智能家居在中国的发展情况。分析了阻碍智能家居发展的主要因素, 并指出了智能家居在中国的发展趋势。

2012-09-03

DIY无线天线大集合

这个主要讲的是天线,当然了 天线必然是无线的!哈哈,但是这讲的都是DIY的!想毕看后你也可以DIY了一下吧!快来吧

2010-09-20

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

TA关注的人

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