- 博客(9)
- 收藏
- 关注
原创 链表中的倒数第k个结点和反转链表
牛客 剑指offer.JZ14链表中的倒数第k个结点一、思路分析二、代码实现代码实现链表中的倒数第k个结点一、思路分析在链表中:定义两个头指针,让first指针先走k步,如果first != null说明链表长度大于k,此时last指针和first指针的距离刚好为k,让两个指针first和last同时向后移,直到first到尾部,则last就是倒数第k个节点。二、代码实现代码实现代码如下(示例):import java.util.*;/* * public class ListNod.
2021-03-10 16:45:17
132
原创 调整数组顺序让奇数位于偶数前面
牛客 剑指offer.JZ13调整数组顺序让奇数位于偶数前面一、思路分析二、代码实现1.代码如下2.知识点补充调整数组顺序让奇数位于偶数前面一、思路分析题意:区分出奇数和偶数,按照原顺序奇数偶数顺序不变我的思路:开辟两组新的空间,我这里用的是LinkedList,因为想要用到队列的先进先出方法1、先找出奇数利用2余某个数不为零就是奇数(这里不考虑0的情况),那么余2是0那就是偶数啦2、然后奇数放在一个链表里面,偶数放在一个链表里面。链表不需要事先知道长度大小,所以用链表方便,数组是没法确定大
2021-03-10 15:44:53
246
原创 二进制中1的个数
牛客 剑指offer.JZ8二进制中1的个数一、思路分析二、代码实现代码实现二进制中1的个数输入一个整数,输出该数二进制表示中1的个数。其中负数用补码表示。一、思路分析如果一个整数不为0,那么这个整数至少有一位是1。如果我们把这个整数减1,那么原来处在整数最右边的1就会变为0,原来在1后面的所有的0都会变成1(如果最右边的1后面还有0的话)。其余所有位将不会受到影响。举个例子:一个二进制数1100,从右边数起第三位是处于最右边的一个1。减去1后,第三位变成0,它后面的两位0变成了1,而前面的..
2021-03-09 15:11:44
63
原创 跳台阶
牛客 剑指offer.JZ8跳台阶一、思路分析二、代码实现1.方法一2.方法二跳台阶题目描述:一只青蛙一次可以跳上1级台阶,也可以跳上2级。求该青蛙跳上一个n级的台阶总共有多少种跳法(先后次序不同算不同的结果)。一、思路分析这是一道经典的递推题目,你可以想如果青蛙当前在第n级台阶上,那它上一步是在哪里呢?显然,由于它可以跳1级台阶或者2级台阶,所以它上一步必定在第n-1,或者第n-2级台阶,也就是说它跳上n级台阶的跳法数是跳上n-1和跳上n-2级台阶的跳法数之和。设跳上i级台阶有f(i)
2021-03-09 11:23:11
65
原创 重建二叉树
牛客 剑指offer.JZ4重建二叉树前言一、思路分析二、代码实现1.代码实现如下:2.知识点补充重建二叉树前言题目描述输入某二叉树的前序遍历和中序遍历的结果,请重建出该二叉树。假设输入的前序遍历和中序遍历的结果中都不含重复的数字。例如输入前序遍历序列{1,2,4,7,3,5,6,8}和中序遍历序列{4,7,2,1,5,3,8,6},则重建二叉树并返回。一、思路分析前序遍历:根→左→右中序遍历:左→根→右由前序遍历序列pre={1,2,4,7,3,5,6,8}可知根结点是1;则在
2021-03-08 13:24:40
50
原创 用两个栈模拟队列
提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档牛客 剑指offer.JZ5用两个栈模拟队列思路分析代码实现用两个栈模拟队列思路分析提示:这里可以添加本文要记录的大概内容:这里有两个栈,一个栈stack1用来模拟队列的入队,一个栈stack2用来模拟队列的出队提示:以下是本篇文章正文内容,下面案例可供参考代码实现代码实现如下:public class Solution { Stack<Integer> stack1 = new Stack<Inte
2021-03-05 17:18:10
111
原创 替换空格
牛客 剑指offer.JZ02替换空格一、思路分析二、代码实现1.代码2.StringBuilder和append以及toString()知识点补充替换空格请实现一个函数,将一个字符串中的每个空格替换成“%20”。例如,当字符串为We Are Happy.则经过替换之后的字符串为We%20Are%20Happy。示例1提示:以下是本篇文章正文内容,下面案例可供参考一、思路分析分析:想到StringBuilder和append的用法,将字符串转换为char类型数组,当为空格时就替换为"%20"
2021-03-05 15:59:38
44
原创 求二叉搜索树的第k小节点
牛客 剑指offer.JZ62求二叉搜索树的第k小节点一、思路二、实现代码求二叉搜索树的第k小节点一、思路二叉搜索树按照中序遍历的顺序打印出来正好就是排序好的顺序, 第 k 个结点就是第 K 大的节点,分别递归查找左右子树的第 K 个节点, 或使用非递归借用栈的方式查找, 当 count=k 时返回根节点。二、实现代码代码实现(如下):private int count = 0;public TreeNode KthNode(TreeNode pRoot, int k) { if (pRoo
2021-02-09 18:13:44
197
原创 Nginx反向代理服务器相关的内容
Nginx相关内容Nginx功能请求转发负载均衡动静分离如何插入一段漂亮的代码片生成一个适合你的列表创建一个表格设定内容居中、居左、居右Nginx功能1、请求转发2、负载均衡3、动静分离请求转发通过客户端/浏览器发送请求,到nginx中9001端口中,得到请求根据请求然后转发到不同的服务器8001或者8002端口中(根据路径做匹配)。负载均衡客户端把请求发送到nginx9001端口,把请求平均分担到不同服务区中(集群)。撤销:Ctrl/Command + Z重做:Ctrl/Comma
2021-01-25 10:17:58
81
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人