- 博客(15)
- 资源 (3)
- 收藏
- 关注
原创 leetcode 461 汉明距离
两个整数之间的汉明距离指的是这两个数字对应二进制位不同的位置的数目。给出两个整数 x 和 y,计算它们之间的汉明距离输入: x = 1, y = 4输出: 2解释:1 (0 0 0 1)4 (0 1 0 0) ↑ ↑上面的箭头指出了对应二进制位不同的位置。 1. 这个题我们可以用java中的api 来做,bitCount();来统计已经二进制数中1的个...
2018-05-30 16:42:05 249
原创 leetcode 409. 最长回文串(哈希表-set集合)
给定一个包含大写字母和小写字母的字符串,找到通过这些字母构造成的最长的回文串。在构造过程中,请注意区分大小写。比如 "Aa" 不能当做一个回文字符串。注意:假设字符串的长度不会超过 1010。示例 1:输入:"abccccdd"输出:7解释:我们可以构造的最长的回文串是"dccaccd", 它的长度是 7。这个题我们用set集合来做。我们只需要计算字符串两个相同字符的个数,最好乘以2...
2018-05-24 14:43:48 703
转载 离散傅里叶变换
1 2 3 4 5 6 7 8 9 10 作 者:韩 昊 知 乎:Heinrich 微 博:@花生油工人 知乎专栏:与时间无关的故事 谨以此文献给大连海事大学的吴楠老师,柳晓鸣老师,王新年老师以及张晶泊老师。 转载的同学请保留上...
2018-05-23 14:55:58 9570 4
原创 Java中parseInt()和valueOf(),toString()的区别
1.parseInt()就是把String类型转化为int类型。如 String a= "123"; int b = Integer.parseInt(a);这样b就等于123了。2.ValueOf()方法比如说 Integer.valueOf()是把String类型转化为Integer类型(注意:是Integer类型,而不是int类型,int类型是表示数字的简单类型,Intege...
2018-05-22 19:39:47 784
原创 深入理解按位异或运算符
异或运算:首先异或表示当两个数的二进制表示,进行异或运算时,当前位的两个二进制表示不同则为1相同则为0.该方法被广泛推广用来统计一个数的1的位数!参与运算的两个值,如果两个相应bit位相同,则结果为0,否则为1。即: 0^0 = 0, 1^0 = 1, 0^1 = 1, 1^1 = 0按位异或的3个特点:(1) 0^0=0,0^1=1 0异或任何数=任何数(2) 1^0=1,1^1...
2018-05-18 17:15:21 672
原创 Leetcote 389. 找不同
给定两个字符串 s 和 t,它们只包含小写字母。字符串 t 由字符串 s 随机重排,然后在随机位置添加一个字母。请找出在 t 中被添加的字母。输入:s = "abcd"t = "abcde"输出:e解释:'e' 是那个被添加的字母。这个题有个很明显的特征,是两个字符串有很多相同的字符,我们马上想到^按位异或来算,0^‘a’^‘b’^‘c’^‘d’^‘a’^‘b’^‘c’^‘d’^‘...
2018-05-18 17:06:13 255
原创 Leetcode 387. 字符串中的第一个唯一字符
最近在刷leetcode的时候,刷多了,发现了这类关于字符串题目解法的一个统一性。通常我们定义一个长度为26的数组,来存储26的字母依次对应的值。比如这道题,让我们找出第一个不重复的字符,我们可以先遍历字符串s ,用字符串中的每一个字符减去‘a’,这样得到一个差值,存到数组中,在字符串后面的字符如果有跟前面相同的字符,同样的数组中的位置不变,让其加一,这样我们便知道字符串中每个字符的个数,然后再次...
2018-05-18 15:30:56 607
原创 leetcode374 猜数字大小
我们正在玩一个猜数字游戏。 游戏规则如下:我从 1 到 n 选择一个数字。 你需要猜我选择了哪个数字。每次你猜错了,我会告诉你这个数字是大了还是小了。你调用一个预先定义好的接口 guess(int num),它会返回 3 个可能的结果(-1,1 或 0):-1 : 我的数字比较小 1 : 我的数字比较大 0 : 恭喜!你猜对了!n = 10, 我选择 6.返回 6.我们先看看二分查找的相关...
2018-05-18 13:51:06 638
原创 位运算符
今天和同学讨论负数为什么要用补码表示,被嘲笑一波,说是计算机组成原理的基础知识,我尴尬不失礼貌的说,不好意思,我没有学计算机组成原理。当然了,没学不是借口,以前不会,碰到了,就要理解,记住。最近在刷LeetCode的时候,经常碰到位运算的题目,一开始是拒绝的,总是跳过跳过,我学习方法里面是有这个习惯,遇到不会的,我不想花时间去理解,去消灭它,我想这就是为什么我一直这么菜的原因吧。 ...
2018-05-18 13:20:15 155
原创 正数的原码,反码,补码
这之前,遇到什么原码,反码,补码,就头疼,其实遇到一个自己怕的问题,就一定要解决它,吃掉它,这样心里的心结就解决了,不然等到以后,每次遇到都是跳过,跳过,难受香菇。 首先提几个概念: 原码,反码,补码 原码是什么? 原码就是早期用来表示数字的一种方式: 一个正数,转换为二进制位就是这个正数的原码。负数的绝对值转换成二进制位然后在高位补1就是这个负数的...
2018-05-18 12:14:19 69726 7
原创 字节,位,比特的关系
大一学习C语言,后来学c#,再学java,对字节,位这样的问题总是避而不谈,所有总是处在一个似懂非懂得状态,非常难受,最近在刷算法题的时候,经常碰到位运算的题目,十分苦恼,决定好好看看了。 1.bit(比特)bit也就是我们不一定听说过的比特,大名鼎鼎的比特币就是以此命名的。它的简写为小写字母 “b” 。作为信息技术的最基本存储单元,因为比特实在太小了,所以大家生活中...
2018-05-18 11:35:25 6088
原创 leetcode263 丑数的判断
编写一个程序判断给定的数是否为丑数。丑数就是只包含质因数 2, 3, 5 的正整数。示例 1:输入: 6输出: true解释: 6 = 2 × 3示例 2:输入: 8输出: true解释: 8 = 2 × 2 × 2示例 3:输入: 14输出: false 解释: 14 不是丑数,因为它包含了另外一个质因数 7。说明:1 是丑数。输入不会超过 32 位有符号整数的范围: [−231,...
2018-05-16 11:23:33 598 1
原创 2016 matlab 中文版软件和安装教程
Matlab用途:点击打开链接 与网盘资源相对应的安装教程1.将网盘中的3个文件下载下来后,解压(在当前路径下),得到下面这步。一定注意,下面这五个文件 不是安装路径 2.在上面的 R2016a_win64 文件中 找到 setup.exe 文件双击 进行安装(注意,安装成功,不代表 这个软件你就能正常使用了)。 3.找到 Matlab 2016a ...
2018-05-15 16:57:14 3348 1
原创 Matlab 用途
Matlab优点: 1.高效的数值计算功能。目前其他编程语言以及其他类似的数学软件无可替代;2.完备的计算结果和编程可视化功能。这一点其他软件,无可替代;3.接近数学表达式的自然化m语言。非常易于学习和掌握;Matlab软件就是一个编程开发环境,自带的m语言简单易用,有编程开发经验的人应该是非常容易掌握的,支持面向对象编程。4.功能丰富的应用工具箱与Help系统,目前Matla...
2018-05-15 16:55:51 20982
原创 Java中的String,StringBuilder,StringBuffer三者的区别
最近在学习Java的时候,遇到了这样一个问题,就是String,StringBuilder以及StringBuffer这三个类之间有什么区别呢,自己从网上搜索了一些资料,有所了解了之后在这里整理一下,便于大家观看,也便于加深自己学习过程中对这些知识点的记忆,如果哪里有误,恳请指正。 这三个类之间的区别主要是在两个方面,即运行速度和线程安全这两方面。首先说运行速度,或者说是执行速度,在这...
2018-05-08 14:13:27 97
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人