噜啦噜啦嘿

Thinking will not overcome fear but action will.

java发送短信SMS

做项目学习的小功能

java发送短信SMS 在中国网建中注册用户:本程序是通过中国网建提供的SMS短信平台实现的,该平台新用户注册可以拥有免费5条普通短信和3条彩信,足够进行尝试和体验了。中国网建注册地址 修改短信签名:注册成功后登陆,用户登陆有首先要修改短信签名,因为中国网建中规定了,发送的短信如果没有正规的签名是不能成功发送的。 修改验证码网关和绑定...

剑指offer第66题“机器人的运动范围”

完事了

机器人的运动范围 题目描述 地上有一个m行和n列的方格。一个机器人从坐标0,0的格子开始移动,每一次只能向左,右,上,下四个方向移动一格,但是不能进入行坐标和列坐标的数位之和大于k的格子。 例如,当k为18时,机器人能够进入方格(35,37),因为3+5+3+7 = 18。但是,它不能进入方格(35,38),因为3+5+3+8 = 19。请问该机器人能够达到多少个格子? *** 思路 比上一...

剑指offer第65题“矩阵中的路径”

倒数2!

矩阵中的路径 题目描述 请设计一个函数,用来判断在一个矩阵中是否存在一条包含某字符串所有字符的路径。路径可以从矩阵中的任意一个格子开始,每一步可以在矩阵中向左,向右,向上,向下移动一个格子。如果一条路径经过了矩阵中的某一个格子,则之后不能再次进入这个格子。 例如 a b c e s f c s a d e e 这样的3 X 4 矩阵中包含一条字符串”bcced”的路径,但是矩阵中不包含”ab...

剑指offer第64题“滑动窗口的最大值”

倒数3

滑动窗口的最大值 题目描述 给定一个数组和滑动窗口的大小,找出所有滑动窗口里数值的最大值。例如,如果输入数组{2,3,4,2,6,2,5,1}及滑动窗口的大小3,那么一共存在6个滑动窗口,他们的最大值分别为{4,4,6,6,6,5}; 针对数组{2,3,4,2,6,2,5,1}的滑动窗口有以下6个: {[2,3,4],2,6,2,5,1}, {2,[3,4,2],6,2,5,1}, {2,3...

剑指offer第63题“数据流中的中位数”

无从下手

数据流中的中位数 题目描述 如何得到一个数据流中的中位数?如果从数据流中读出奇数个数值,那么中位数就是所有数值排序之后位于中间的数值。如果从数据流中读出偶数个数值,那么中位数就是所有数值排序之后中间两个数的平均值。我们使用Insert()方法读取数据流,使用GetMedian()方法获取当前读取数据的中位数。 *** 思路 这道题想了好多种方法,但都肯定不是最优的。 一是没有...

剑指offer第62题“二叉搜索树的第k个结点”

最后第五题

二叉搜索树的第k个结点 题目描述 给定一棵二叉搜索树,请找出其中的第k小的结点。例如, (5,3,7,2,4,6,8) 中,按结点数值大小顺序第三小结点的值为4。 *** 思路 当然可以把二叉搜索树每个点都遍历一遍,然后存在数组中,再排个序,取出第k个。 但熟悉概念的话可以知道,二叉搜索树的中序遍历就是从小到大遍历,所以当中序遍历到第k个时,即可返回。 Java实现 /* public...

剑指offer第61题“序列化二叉树”

最后第六题

序列化二叉树 题目描述 请实现两个函数,分别用来序列化和反序列化二叉树 *** 思路 这题丢了老脸。。一开始序列化就搞了前序,然后反序列化怎么也做不出来,最后逼急了,把中序序列也求了出来。。。再反序列化。 后来看了大佬的思路,真。。就差一点想到了。 序列化步骤类似,但是多加了一些东西,比如用一个字符隔开每个结点,如果遇到叶子结点,再后面加一个标记字符。 这样子再反序列化时,就可以使用spli...

剑指offer第59题“按之字形顺序打印二叉树”

最后第八题

按之字形顺序打印二叉树 题目描述 请实现一个函数按照之字形打印二叉树,即第一行按照从左到右的顺序打印,第二层按照从右至左的顺序打印,第三行按照从左到右的顺序打印,其他行以此类推。 *** 思路 用dfs递归遍历所有点,存在二维数组中,然后用Collections.reverse()把偶数行翻转即可。 偷懒了偷懒了。 后来我看到大佬是用两个栈来做的,一个存奇数行,一个存偶数行。当输出奇数行时,...

剑指offer第58题“对称的二叉树”

最后第九题

对称的二叉树 题目描述 请实现一个函数,用来判断一颗二叉树是不是对称的。注意,如果一个二叉树同此二叉树的镜像是同样的,定义其为对称的。 *** 思路 一般要把树每一个点都要判断的题,就会想到递归,想到递归就要新定义一个方法。 判断是否对称。那么根结点A的左儿子B与右儿子C值相等,然后要比较B左与C右和B右与C左,都想等了就能判定BC相等。 接着就要判断B左左与C右右,B左右与C右左,这能判断...

剑指offer第57题“二叉树的下一个结点”

最后第十题

二叉树的下一个结点 题目描述 给定一个二叉树和其中的一个结点,请找出中序遍历顺序的下一个结点并且返回。注意,树中的结点不仅包含左右子结点,同时包含指向父结点的指针。 *** 思路 一道概念题吧,就是考考中序遍历。本题一共就两种情况 一种是有右儿子,然后找右子树中最左的结点 另一种是它所在的子树是某个结点的左子数,就是一路向上找,先判断自己是不是父亲结点的左儿子,不是,移动父亲结点,...