自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

化十の产研思考

图什么?怎么办?做得如何? Our best even better!

  • 博客(66)
  • 资源 (2)
  • 收藏
  • 关注

原创 Linux下git与github远程交互指南

1、环境搭建linux下git的安装在这里省略。安装之后需要生成密钥完成本地与github的关联。执行如下命令生成密钥: ssh-keygen -t rsa -C “github上登记的邮箱地址”生成密钥之后到/home/.ssh下进行查看,有id_rsa(私钥)和id_rsa.pub(公钥)两个文件,通过cat命令打开.pub文件,将其中的公钥复制到github网站sett...

2018-08-16 16:32:46 558 3

转载 四轴飞行器的串级PID参数整定经验

串级PID即将两个PID控制器按照串联的方式连接起来,前一个的输出作为后一个的输入两者共同控制控制对象。对于四旋翼来讲最普通的就是外环角度环,内环角速度环,两者怎么联系呢?

2017-11-27 11:22:48 8273 13

原创 《How to think like a designer》思悟总结

学习Garr大师的《How to think like a designer》,不仅是学如何做ppt,如何进行一场平衡的presentation,更多的是想体悟出为什么大师能够这样,学习其中的习惯。

2017-08-29 10:07:02 1144

原创 《结网》@互联网产品经理改变世界 读后感

读过王坚大佬的《结网——互联网产品经理改变世界》(第一版),一些不错的地方分享给大家,同时分享一些心得与收获。

2017-06-14 23:23:40 1622

原创 云数据中心解决方案架构图

展示云数据中心解决方案的整体架构。

2017-05-18 23:42:32 10832

原创 基于华为产品的高校云数据中心建设规划设计方案

基于华为产品的整体架构设计。从底层到上层的全方位指导。

2017-05-18 22:38:11 22463 2

原创 通俗理解同步通信与异步通信

网络上对同步传输与异步传输的文章一大把,各种图示解说也很多,但看完终归有点一头雾水,本文通俗的来说说这两种通信方式。

2017-03-29 16:35:21 28970 8

翻译 了解与MDIO/MDC接口相关的22号、45号条款

管理MII接口的MDIO接口是一个双线的串行接口,用来对PHY芯片等物理层信息进行操作管理。本文对MDC/MDIO接口相关标准中的两个条款22号和45号进行了翻译。

2017-03-14 11:07:37 21768 2

原创 Hart/Hart-IP协议 介绍、分析和应用

HART协议最初是由美国Rosemount公司开发,已应用了多年。为了满足体量增长快速的工业数据传输,通过以太网来访问数据,HART通信基金会的HART协议规范增添了这个新的功能。Hart-IP为访问一些智能设备和过程信息提供了新的选项。

2017-03-04 20:23:20 11134

原创 Marvell 88E1145PHY芯片的初始化配置

PHY芯片的初始化配置有硬件配置和软件配置两种途径,当系统上电之后默认采用硬件配置的模式,如需要更改配置,可以通过软件写寄存器的方式来更改模式。本文主要说明硬件配置的方法,以Marvell 88E1145PHY芯片为例,除PHY芯片地址之外,其他内容均可以通过软件途径来更改。

2017-03-04 19:52:24 20468

原创 ARM9与FPGA并口通信的实现

并口通信是最常用基础功能,实现ARM9与FPGA的并口通信有两种方式,一种颇为巧妙,利用SMC(Static Memory Controllor),其中的使能点都通过寄存器可以轻松控制;另一种方式就是通过GPIO来完成。

2017-03-04 16:59:17 12220

原创 连续子数组的最大和

剑指offer第30题: HZ偶尔会拿些专业问题来忽悠那些非计算机专业的同学。今天测试组开完会后,他又发话了:在古老的一维模式识别中,常常需要计算连续子向量的最大和,当向量全为正数的时候,问题很好解决。但是,如果向量中包含负数,是否应该包含某个负数,并期望旁边的正数会弥补它呢?例如:{6,-3,-2,7,-15,1,2,2},连续子向量的最大和为8(从第0个开始,到第3个为止)。给一个...

2018-07-25 10:09:41 313

原创 数组中出现次数超过一半的数字

剑指offer第28题: 数组中有一个数字出现的次数超过数组长度的一半,请找出这个数字。例如输入一个长度为9的数组{1,2,3,2,2,2,5,4,2}。由于数字2在数组中出现了5次,超过数组长度的一半,因此输出2。如果不存在则输出0。理解:想到了两种方法,第一种方法因为涉及了排序,复杂度较高。先进行排序,排序之后从前到后遍历,对相同数字进行计数,如果计没超过一半就换了其...

2018-07-25 00:39:34 301

原创 字符串的排列

剑指offer第27题: 输入一个字符串,按字典序打印出该字符串中字符的所有排列。例如输入字符串abc,则打印出由字符a,b,c所能排列出来的所有字符串abc,acb,bac,bca,cab和cba。理解: 首先将字符串转换为字符数组进行处理,交换的形式如上图所示,进行递归处理,首先和自己进行交换,然后和第二个、第三个……,后面的进行递归交换,保证所有都交换一遍。交换完...

2018-07-24 23:52:23 297

原创 二叉搜索树与双向链表

剑指offer第26题: 输入一棵二叉搜索树,将该二叉搜索树转换成一个排序的双向链表。要求不能创建任何新的结点,只能调整树中结点指针的指向。理解:不能建立新的结点,只能改变指向,就是让left成为指向前一个的指针,right成为指向后一个的指针。由于是搜索二叉树,于是通过中序遍历+递归可以实现这个变化过程。 重要的是搞明白在互指的过程中pRoot和Head结点当前都指向的是...

2018-07-24 17:49:05 223

原创 复杂链表的复制

剑指offer第25题: 输入一个复杂链表(每个节点中有节点值,以及两个指针,一个指向下一个节点,另一个特殊指针指向任意一个节点),返回结果为复制后复杂链表的head。(注意,输出结果中请不要返回参数中的节点引用,否则判题程序会直接返回空)理解:本题是一个复制链表的题。看似比较复杂,其实原理还是非常简单的。一共有两类指针,一类是指向下一个,一类是指向任意一个。新建一个Rand...

2018-07-24 16:41:23 202

原创 二叉树中和为某一值的路径

剑指offer第24题: 输入一颗二叉树的跟节点和一个整数,打印出二叉树中结点值的和为输入整数的所有路径。路径定义为从树的根结点开始往下一直到叶结点所经过的结点形成一条路径。(注意: 在返回值的list中,数组长度大的数组靠前)理解:采用深度遍历的思想和递归的思想。首先将根结点的值减掉。然后判断是否满足了路径条件,如果不满足就需要对左子树和右子树分别递归。 需要注意的是,在...

2018-07-24 15:44:54 368

原创 二叉搜索树的后序遍历序列

剑指offer第23题: 输入一个整数数组,判断该数组是不是某二叉搜索树的后序遍历的结果。如果是则输出Yes,否则输出No。假设输入的数组的任意两个数字都互不相同。理解:首先应当理解后序遍历的特点,和搜索/排序二叉树的特点。后序遍历,根节点在最末尾;搜索二叉树,比根节点小的和比根节点大的分成两段排列在根节点之前。 首先通过循环找到后序遍历表中右子树的第一个结点,然后分类...

2018-07-24 14:26:42 239

原创 从上往下打印二叉树

剑指offer第22题: 从上往下打印出二叉树的每个节点,同层节点从左至右打印。理解:本题是按层对二叉树进行打印的标准基础题。使用一个队列,或者ArrayList、LinkedList集合模拟一个队列,作为辅助空间。一边对已经压入的结点取出,提取值存入list,一边将取出的node的左右子结点压入。import java.util.ArrayList;impor...

2018-07-24 10:31:37 198

原创 栈的压入、弹出序列

剑指offer第21题: 输入两个整数序列,第一个序列表示栈的压入顺序,请判断第二个序列是否可能为该栈的弹出顺序。假设压入栈的所有数字均不相等。例如序列1,2,3,4,5是某栈的压入顺序,序列4,5,3,2,1是该压栈序列对应的一个弹出序列,但4,3,5,1,2就不可能是该压栈序列的弹出序列。(注意:这两个序列的长度是相等的)理解:本题的思路是按照轮次依次将push集合中的内...

2018-07-24 09:24:19 179

原创 包含min函数的栈

剑指offer第20题: 定义栈的数据结构,请在该类型中实现一个能够得到栈中所含最小元素的min函数(时间复杂度应为O(1))。理解:定义两个栈,一个存放普通的压入值,另一个存放min值。压入时进行判断,如果出现更小的就压入stack2,弹出时如果最小的已经被弹出就将stack2中最小的pop掉。import java.util.Stack;public clas...

2018-07-24 08:31:31 173

原创 顺时针打印矩阵

剑指

2018-07-24 08:30:21 212

原创 二叉树的镜像

剑指offer第18题: 操作给定的二叉树,将其变换为源二叉树的镜像。 输入描述: 二叉树的镜像定义:源二叉树 8 / \ 6 10 / \ / \ 5 7 9 11 镜像二叉树 ...

2018-07-23 20:47:39 197

原创 树的子结构

剑指offer第17题: 输入两棵二叉树A,B,判断B是不是A的子结构。(ps:我们约定空树不是任意一个树的子结构)理解:利用了递归的思想。在主方法里,先判断root2的根节点是否与root1相同,如果不同就需要判断是否与root1的left和right两个子结点相同。直到判断到有相同结点为止开始进入doesRoot1HaveRoot2方法。 当root2已经为null时,...

2018-07-23 17:51:31 161

原创 《最强NBA》——手游产品测评

本篇手游测试文档是应官方的邀请撰写的客观测评文章。希望这篇测评能够带给大家一些有价值的参考。测试平台:IOS。Part1-前言《最强NBA》是一款由腾讯游戏开发并运营的体育竞技手游,不同于以往乏味的卡牌类体育游戏,NBA球迷们终于迎来了一款真实竞技手游,游戏相比之前其他卡牌策略类游戏有更高的可玩性,相比街头篮球等多种操作类体育游戏,这款游戏又具备了难得的版权加成,游戏内所有的角色都...

2018-07-23 16:45:52 3885

原创 合并两个排序链表

剑指offer第16题: 输入两个单调递增的链表,输出两个链表合成后的链表,当然我们需要合成后的链表满足单调不减规则。理解:首先考虑特殊情况的出现。常规情况中,对list1和list2中的val进行对比。根据对比的情况,赋予newList,让newList的next**指向Merge递归的结果**,这样才能连接成链。 对于链表的题一定要确认链表中间没有丢失,最后要确认是...

2018-07-23 16:28:12 153

原创 感恩生命,永不放弃——学习力克胡哲

力克胡哲,一个对我来说并不陌生的名字,在高中考试作文时就经常使用这个“精神家”的例子。精神家这个名字是我喜欢的,因为力克胡哲是一位精神的富裕者,可不是“神经家”。他的精神一部分只用外表就可以传递,另一部分通过他的大声演说传递出来。再次看他的DVD,用此文再一次说说我对Nick的感触和它带给我的无穷力量。 一个没有四肢的人注定从出现在他人面前就是被特殊看待的,面对他人异样的目光,面对冷嘲热讽,...

2018-07-23 15:32:49 3091

原创 翻转链表

剑指offer第15题: 输入一个链表,反转链表后,输出新链表的表头。理解:做循环,如果当前节点不为空的话,始终执行此循环,此循环的目的就是让当前节点从指向next到指向pre,如此就可以做到反转链表的效果。先用next保存head的下一个节点的信息,保证单链表不会因为失去head节点的原next节点而就此断裂。保存完next就可以让head指向pre了。/*pub...

2018-07-23 15:15:37 202

原创 链表中倒数第k个结点

剑指offer第14题: 输入一个链表,输出该链表中倒数第k个结点。理解:想找到倒数第k个结点。用两个指针,先让一个指针走(k-1)步,然后两个指针再一起走。当先走的指针到达了末尾的时候,后走的slow指针指向的结点就是倒数第k个结点。/*public class ListNode { int val; ListNode next = null;...

2018-07-23 11:46:12 133

原创 调整数组顺序使奇数位于偶数前面

剑指offer第13题: 输入一个整数数组,实现一个函数来调整该数组中数字的顺序,使得所有的奇数位于数组的前半部分,所有的偶数位于数组的后半部分,并保证奇数和奇数,偶数和偶数之间的相对位置不变。理解:算法的思路类似冒泡算法。如果后面的数字是奇数,前面的数字是偶数,就需要进行交换。内循环执行一轮就可以至少将一个数字交换到队首。外循环遍历整个数组。public class...

2018-07-23 11:22:11 176

原创 数值的整数次方

剑指offer第12题: 给定一个double类型的浮点数base和int类型的整数exponent。求base的exponent次方。理解:因为equals不能用于基本变量类型,只能用于字符串等引用类型(“==”用于基本类型)。因此需要自己写一个equal方法,考虑到浮点类型丧失精确度有误差。再写一个用于常规指数运算的for循环power方法。另外要考虑底数、指数为0等...

2018-07-23 10:24:00 175

原创 二进制中1的个数

剑指offer第11题: 输入一个整数,输出该数二进制表示中1的个数。其中负数用补码表示。理解:本题可以用最直接的方法,让1同最低位做与运算,如果结果不为0,说明这一位是1,计数器加1;另外一种方法是让输入n同(n-1)做与运算,这样每次运算可以消除一个“1”,同样可以计算“1”的个数。这种方法的效率更高,代码如下:public class Solution { ...

2018-07-23 09:20:13 189

原创 矩形覆盖

剑指offer第10题: 我们可以用2*1的小矩形横着或者竖着去覆盖更大的矩形。请问用n个2*1的小矩形无重叠地覆盖一个2*n的大矩形,总共有多少种方法?理解:通过总结规律发现符合斐波那契数列,通过数列规则题的方法计算即可。public class Solution { public int RectCover(int target) { //...

2018-07-17 20:41:32 158

原创 变态跳台阶

剑指offer第9题: 一只青蛙一次可以跳上1级台阶,也可以跳上2级……它也可以跳上n级。求该青蛙跳上一个n级的台阶总共有多少种跳法。理解:本题的重点是知道一共是2^(n-1)种情况。直接用公式即可,使用左移来做2的次方,这里显得更加清晰。public class Solution { public int JumpFloorII(int target) {...

2018-07-17 20:28:21 203

原创 跳台阶

剑指offer第8题: 一只青蛙一次可以跳上1级台阶,也可以跳上2级。求该青蛙跳上一个n级的台阶总共有多少种跳法(先后次序不同算不同的结果)。理解:本题是斐波那契数列的变形,可以参考斐波那契数列计算的试题。只需要将台阶的级数对应斐波那契数列的第几个数对应对就好。第一阶台阶对应的是斐波那契的第二项1,第二阶台阶对应数列的第三项2。public class Solution ...

2018-07-17 20:20:01 166

原创 斐波那契数列

剑指offer第7题: 大家都知道斐波那契数列,现在要求输入一个整数n,请你输出斐波那契数列的第n项(从0开始,第0项为0)。(n<=39)理解:本题没有太大的难度,需要了解斐波那契数列的计算规则。按照规则第0项为0,第一项和第二项为1,后面按照规则相加计算即可。注意处理好for循环的循环边界。public class Solution { public...

2018-07-17 20:03:39 175

原创 旋转数组的最小数字

剑指offer第6题: 把一个数组最开始的若干个元素搬到数组的末尾,我们称之为数组的旋转。 输入一个非减排序的数组的一个旋转,输出旋转数组的最小元素。 例如数组{3,4,5,1,2}为{1,2,3,4,5}的一个旋转,该数组的最小值为1。 NOTE:给出的所有元素都大于0,若数组大小为0,请返回0。理解:一种方法是用二分法,找到mid,然后通过对比mid与left,right...

2018-07-17 12:08:04 185

原创 用两个栈实现队列

剑指offer第5题: 用两个栈来实现一个队列,完成队列的Push和Pop操作。 队列中的元素为int类型。理解:完成本题首先应当理解堆栈和队列的关键性质。堆栈是先入后出,FILO;而队列是先入先出,FIFO。 当有元素需要进入队列就将其压入Stack1,当有元素需要出队列,就将Stack1中的元素全部弹出到Stack2中,通过Stack2来负责出队列。Stack1负责入,...

2018-07-17 10:52:50 141

原创 重建二叉树

剑指offer第4题: 输入某二叉树的前序遍历和中序遍历的结果,请重建出该二叉树。假设输入的前序遍历和中序遍历的结果中都不含重复的数字。例如输入前序遍历序列{1,2,4,7,3,5,6,8}和中序遍历序列{4,7,2,1,5,3,8,6},则重建二叉树并返回。理解:本题首先应当理解前序遍历和中序遍历是什么,这里的“前”和“中”都是指遍历根节点的次序,前序遍历是先遍历根节点,中...

2018-07-17 10:01:52 199

原创 从尾到头打印链表

剑指offer第3题: 输入一个链表,按链表值从尾到头的顺序返回一个ArrayList。理解:本题中的关键词是从尾到头,考察当遇到反向输出时是否可以想到使用堆栈特性来辅助输出。 现将所有节点都压入堆栈,然后再依次弹出,此时弹出的顺序就是从尾到头的顺序了。注意ArrayList中存放的是整型,而不是ListNode型,这点要注意,否则是错的。import java.u...

2018-07-16 22:03:39 161

解决Cadence16.6 用FPM生成封装无法修改保存的问题

解决Cadence16.6 用FPM生成封装无法修改保存的问题,依照教程可以完全解决问题。sda补丁可以下载我的另一份资源。

2018-01-16

针对FPM的sda补丁

FPM生成的封装在cadence Allegro16.6中编辑修改后无法保存,复制该文件到目录即可解决,具体使用方法可以下载我的另一个教程资源。

2018-01-16

空空如也

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

TA关注的人

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