zoukankan      html  css  js  c++  java
  • leetcode刷题总结251-300

    251-256.。

    257. 二叉树的所有路径

      描述:

        

       思路:递归(几乎所有的树的遍历等操作都可以用递归)

    258. 各位相加

      描述:

        输入: 38
        输出: 2
        解释: 各位相加的过程为:3 + 8 = 11, 1 + 1 = 2。 由于 2 是一位数,所以返回 2。

      思路:按照思路

    259.。。。。

    260. 只出现一次的数字 III

      描述:

        

       思路:所有数字位异或的操作。然后得出那两个只出现一次的数字的异或。找到结果为0 的位,然后按照位为0,1分组。再次异或。

    261.262.。。。

    263. 丑数

      描述:    

        

       思路:不断除以2,3,5.先判断余数是否为0再进行除。

    264. 丑数 II

      描述:

        

       思路:三个指针。分别为2.3.5.从1开始,当某个指针乘以当前这个数字最小的时候,在丑数列表后添加,同时这个指针往后移一位。

    265.266.。。。

    268. 缺失数字

      描述:

        

      思路:位异或。

    269.270.271.272.。。

    273. 整数转换英文表示

      描述:    

        

       思路:分治。从右往左按3位进行分。

    274. H 指数

      描述:

        

       思路:排序。从左往右开始判断。

    275. H指数 II

      描述:

        

       思路:二分查找。

    276.277.。。

    278. 第一个错误的版本

      思路:二分。

    279. 完全平方数

      描述:

        

      思路:动态规划。dp[i]=min(dp[i],dp[i-j*j]+1)j从1,2,3.。。

    280.281.。。

    282. 给表达式添加运算符

      描述:

        

       思路:回溯。遇到*的话需要进行特殊处理。

    283. 移动零

      描述:

        输入: [0,1,0,3,12]
        输出: [1,3,12,0,0]

      思路:双指针。。

    284. 顶端迭代器

      描述;

        

       思路:在构造方法中构建linkedlist.调用linkedlist方法完成。;

    285.286.。。

    287. 寻找重复数

      描述:

        给定一个包含 n + 1 个整数的数组 nums,其数字都在 1 到 n 之间(包括 1 和 n),可知至少存在一个重复的整数。假设只有一个重复的整数,找出这个重复的数。

        输入: [1,3,4,2,2]
        输出: 2

      思路:求出中点mid,然后遍历整个数组,统计所有小于等于mid的数的个数,如果个数大于mid,则说明重复值在[mid+1, n]之间,反之,重复值应在[1, mid-1]之间,然后依次类推,直到搜索完成,此时的low就是我们要求的重复值。

    288.。。。

    289. 生命游戏

      思路:

        

      思路:按照题目描述,将不同状态改为不同的数字。按照数字和0或1进行判断修改。

    290. 单词规律

      描述:

        输入: pattern = "abba", str = "dog cat cat dog"

        输出: true

      思路:hash

    292. Nim 游戏

      描述:

        

       思路:通过演练找规律。当为4 8 12 16 .。。。必输。

    295. 数据流的中位数

      描述:

        

       思路:中位数关注的是第k小的数字。或者是第k,k+1.那么我们需要维护两个堆。一个大顶堆。用于维护前k小的数字。一个小顶堆,维护后k....的数字。同时还要保持这两个堆之间的输入流动。当来一个数字的时候,我们需要将其压入大顶堆,然后将大顶堆弹出一个元素入小顶堆。当此时为奇数,我们需要将小顶堆的弹出压入大顶堆。

    297. 二叉树的序列化与反序列化

      思路:DNF,BFS

    299. 猜数字游戏

      描述:

        输入: secret = "1807", guess = "7810"

        输出: "1A3B"

        解释: 1 公牛和 3 奶牛。公牛是 8,奶牛是 0, 1 和 7。

      思路:先按照下标对比求出A.然后通过hash求B

    300. 最长上升子序列

      描述:

        输入: [10,9,2,5,3,7,101,18]

        输出: 4 

        解释: 最长的上升子序列是 [2,3,7,101],它的长度是 4。

      思路;动态规划。dp[i]决定于当前的最长上升子序列的从头开始到当前数字的长度。然后从头找到i,只要比nums[i]小,就进行一次max.  

      

    290. 单词规律

  • 相关阅读:
    数学是最好的语言
    人类的语言--自然语言--》逻辑语言
    为什么大脑喜欢看图?
    思考是调用大脑存储的上下文对输入信息进行处理的过程
    Redis的相关问题总结
    TP5 关联模型使用(嵌套关联、动态排序以及隐藏字段)
    array_column 函数, 以及在PHP5.5之下的替代方法
    thinkphp在app接口开发过程中的通讯安全认证
    PHP开发APP接口实现--基本篇
    分布式与集群的区别是什么?
  • 原文地址:https://www.cnblogs.com/dhName/p/13268596.html
Copyright © 2011-2022 走看看