排序和查找算法
白马长枪儒雅将
这个作者很懒,什么都没留下…
展开
-
堆排序java
import java.lang.reflect.Array;import java.util.Arrays;public class Heapsorting { /** * 下沉操作 * @param array 建堆的数组 * @param parentIndex 父节点 * @param length 待排序长度 */ /** * 调整堆的下调的步骤...原创 2019-07-02 11:28:35 · 232 阅读 · 0 评论 -
树的最大最小深度
public class MaxMinDepth { public class TreeNode { int val; TreeNode left; TreeNode right; public TreeNode(int x){ this.val=x; } } //树的最大深度 public static int TreeMaxDepth(TreeNode r...原创 2019-07-23 14:47:45 · 354 阅读 · 0 评论 -
二叉树层次遍历
题目给定一个二叉树,返回其按层次遍历的节点值。 (即逐层地,从左到右访问所有节点)。例如: 给定二叉树: [3,9,20,null,null,15,7], 3 / \ 9 20 / \ 15 7返回其层次遍历结果:[ [3], [9,20], [15,7]]题解我们数据结构的书上教的层序遍历,就是利用一个...原创 2019-07-23 11:17:26 · 169 阅读 · 0 评论 -
验证二叉搜索树
第一种方法:中序遍历,判断数组是否有序。第二种方法:二叉搜索树的特性:根节点>左子树的最大值,根节点<右子树的最小值代码:public class FindTree { public class TreeNode { int val = 0; TreeNode left = null; TreeNode right = null; ...原创 2019-07-22 10:27:19 · 172 阅读 · 0 评论 -
将汉字数字转换成数字
多试点测试用例,这道题很容易出错import java.util.Stack;public class test02 { //将一个汉字转换成数字 三千四百万零三十二个<---->340 public static Integer reverNumber(String str) { //最后一个汉字“个”,要是原文没加的话,你就自己加上,str+"个",很简单 ...原创 2019-07-19 10:16:53 · 10814 阅读 · 4 评论 -
求字符串中最长重复子串
面试字节跳动的,失败在此题上!package secendoffer;public class MaxString { public static String maxString(String str) { if (str==null||str.length()==0) { return ""; } //假设重复的字符串相隔1,2,3,4,...str.lengt...转载 2019-07-09 20:39:39 · 2531 阅读 · 4 评论 -
三个数之和
本题需要找到三个和为 0 的元素,对数组排序后,遍历数组,以当前元素的相反数为两数和,然后在当前元素后的所有元素范围内使用双指针算法寻找另两个元素。import java.util.ArrayList;import java.util.Arrays;import java.util.HashSet;import java.util.List;import java.util.Set...原创 2019-07-21 22:08:08 · 507 阅读 · 0 评论 -
判断一个字符串的括号是否合法
import java.util.HashMap;import java.util.Stack;/** * 判断括号是否匹配 * @author wwq * */public class StackMatch { public static Boolean KhMatch(String str) { Stack<String> matchStack=new ...原创 2019-07-21 10:10:57 · 907 阅读 · 0 评论 -
给定一个字符串,请你找出其中不含有重复字符的 最长子串 的长度。本题输出最长子串.。
给定一个字符串,请你找出其中不含有重复字符的最长子串的长度。示例1:输入: "abcabcbb"输出: 3解释: 因为无重复字符的最长子串是 "abc",所以其长度为 3。示例 2:输入: "bbbbb"输出: 1解释: 因为无重复字符的最长子串是 "b",所以其长度为 1。示例 3:输入: "pwwkew"输出: 3解释: 因为无重复字符的最长子串是"w...原创 2019-07-24 21:45:26 · 927 阅读 · 0 评论 -
leetcode 141 判断链表中是否有环
题目描述给定一个链表,判断链表中是否有环。进阶:解题思路无环链表,最后一个节点为nil,有环链表可以无限循环next下去 不用额外空间:快慢节点,慢节点一次走一步,快节点一次走两步,当进入环中,每次循环,快节点会离慢节点近一步,快节点最终会追上慢节点 用额外空间: 用map存走过的节点,第一个走过的节点就是环的入口public class reverLinked { p...原创 2019-07-19 17:10:27 · 215 阅读 · 0 评论 -
LeetCode-24 两两交换链表中的节点
题目:24. 两两交换链表中的节点 难度:中等 分类:链表 解决方案:节点的交换 给定一个链表,两两交换其中相邻的节点,并返回交换后的链表。 你不能只是单纯的改变节点内部的值,而是需要实际的进行节点交换。 示例: 给定 1->2->3->4, 你应该返回 2->1->4->3. 分析:public class r...原创 2019-07-19 16:45:35 · 186 阅读 · 0 评论 -
类
原创 2019-07-14 22:21:53 · 235 阅读 · 0 评论 -
设计模式
原创 2019-07-14 20:12:15 · 178 阅读 · 0 评论 -
快速排序-java和python实现
'''java'''import java.util.Arrays;public class quickSort_01 { /** * 两个指针 * @param array * @param low * @param high */ /** * 1、记住下标最高的和最低的位置,并设置相应的指针,如果两个指针相等或者交叉了,就退出 * 2、记住...原创 2019-06-29 21:13:24 · 222 阅读 · 1 评论 -
01背包问题
解释的话请看此文:https://www.jianshu.com/p/a66d5ce49df5代码:public class package02 {/** * 1、初始化表格 * 2、填表 * @param args */ public static void main(String[] args) { // TODO Auto-generated method stu...原创 2019-07-03 09:05:56 · 290 阅读 · 0 评论 -
生成有效的括号组合
/*给出 n 代表生成括号的对数,请你写出一个函数,使其能够生成所有可能的并且有效的括号组合。括号只有{}[]()这三种。例如,给出 n = 3,生成结果为:[ "((()))", "(()())", "(())()", "()(())", "()()()"]*/import java.util.ArrayList;import java.util.Li...原创 2019-07-23 14:55:19 · 1253 阅读 · 0 评论