zenner's Blog

巨饼的技术博


  • Home

  • About

  • Tags

  • Categories

  • Archives

  • Schedule

  • Sitemap

  • Search

leetcode_0104

Posted on 2020-07-28 | In algorithm , leetcode , 简单

题目

104. 二叉树的最大深度

给定一个二叉树,找出其最大深度。

二叉树的深度为根节点到最远叶子节点的最长路径上的节点数。

说明: 叶子节点是指没有子节点的节点。

示例:
给定二叉树 [3,9,20,null,null,15,7],

1
2
3
4
5
  3
/ \
9 20
/ \
15 7

返回它的最大深度 3 。

Read more »

xml

Posted on 2020-07-27 | In xml

XML:

1. 概念

Extensible Markup Language 可扩展标记语言
    * 可扩展:标签都是自定义的。 <user>  <student>

    * 功能
        * 存储数据
            1. 配置文件
            2. 在网络中传输
    * xml与html的区别
        1. xml标签都是自定义的,html标签是预定义。
        2. xml的语法严格,html语法松散
        3. xml是存储数据的,html是展示数据

    * w3c:万维网联盟
Read more »

leetcode_0392

Posted on 2020-07-27 | In algorithm , leetcode , 容易

题目

392. 判断子序列

给定字符串 s 和 t ,判断 s 是否为 t 的子序列。

你可以认为 s 和 t 中仅包含英文小写字母。字符串 t 可能会很长(长度 ~= 500,000),而 s 是个短字符串(长度 <=100)。

字符串的一个子序列是原始字符串删除一些(也可以不删除)字符而不改变剩余字符相对位置形成的新字符串。(例如,”ace”是”abcde”的一个子序列,而”aec”不是)。

示例 1:

1
s = "abc", t = "ahbgdc"

返回 true.

示例 2:

1
s = "axc", t = "ahbgdc"

返回 false.

Read more »

Bootstrap

Posted on 2020-07-26 | In web , Bootstrap

Bootstrap:

1. 概念

一个前端开发的框架,Bootstrap,来自 Twitter,是目前很受欢迎的前端框架。Bootstrap 是基于 HTML、CSS、JavaScript 的,它简洁灵活,使得 Web 开发更加快捷。
    * 框架:一个半成品软件,开发人员可以在框架基础上,在进行开发,简化编码。
    * 好处:
        1. 定义了很多的css样式和js插件。我们开发人员直接可以使用这些样式和插件得到丰富的页面效果。
        2. 响应式布局。
            * 同一套页面可以兼容不同分辨率的设备。
Read more »

leetcode 42. 接雨水

Posted on 2020-07-26 | In algorithm , leetcode , 困难

题目

42. 接雨水

给定 n 个非负整数表示每个宽度为 1 的柱子的高度图,计算按此排列的柱子,下雨之后能接多少雨水。

img

上面是由数组 [0,1,0,2,1,0,1,3,2,1,2,1] 表示的高度图,在这种情况下,可以接 6 个单位的雨水(蓝色部分表示雨水)。 感谢 Marcos 贡献此图。

示例:

1
2
输入: [0,1,0,2,1,0,1,3,2,1,2,1]
输出: 6
Read more »

leetcode_0329 矩阵中的最长递增路径

Posted on 2020-07-26 | In algorithm , leetcode , 困难

题目

给定一个整数矩阵,找出最长递增路径的长度。

对于每个单元格,你可以往上,下,左,右四个方向移动。 你不能在对角线方向上移动或移动到边界外(即不允许环绕)。

示例 1:

1
2
3
4
5
6
7
8
输入: nums = 
[
[9,9,4],
[6,6,8],
[2,1,1]
]
输出: 4
解释: 最长递增路径为 [1, 2, 6, 9]。

示例 2:

1
2
3
4
5
6
7
8
输入: nums = 
[
[3,4,5],
[3,2,6],
[2,2,1]
]
输出: 4
解释: 最长递增路径是 [3, 4, 5, 6]。注意不允许在对角线方向上移动。
Read more »

注解与反射

Posted on 2020-07-25 | In java , java高级编程 , 注解与反射

注解

1.什么是注解?

  • Annotation 的作用
    • 不是程序本身,可以对程序作出解释。
    • 可以被其他程序读取
  • Annotation的格式:

    • 注解是以“@注释名”在代码中存在的,还可以添加一些参数值;例如:@SuppressWarnings(value = “unchecked”)
  • Annotation在哪里使用?

    • 可以附加在package,class,method,field等上面,相当于给他们添加了额外的辅助信息,我们可以通过反射机制编程实现对这些元数据的访问
Read more »

leetcode 410. 分割数组的最大值

Posted on 2020-07-25 | In algorithm , leetcode

题目

Split Array Largest Sum

给定一个非负整数数组和一个整数 m,你需要将这个数组分成 m 个非空的连续子数组。设计一个算法使得这 m 个子数组各自和的最大值最小。

注意:
数组长度 n 满足以下条件:

  • 1 ≤ n ≤ 1000
  • 1 ≤ m ≤ min(50, n)

示例:

输入:
nums = [7,2,5,10,8]
m = 2

输出:
18

解释:
一共有四种方法将nums分割为2个子数组。
其中最好的方式是将其分为[7,2,5] 和 [10,8],
因为此时这两个子数组各自的和的最大值为18,在所有情况中最小。

Read more »

剑指 Offer 04. 二维数组中的查找

Posted on 2020-07-24 | In algorithm , 剑指offer

题目

剑指 Offer 04. 二维数组中的查找

在一个 n * m 的二维数组中,每一行都按照从左到右递增的顺序排序,每一列都按照从上到下递增的顺序排序。请完成一个函数,输入这样的一个二维数组和一个整数,判断数组中是否含有该整数。

示例:

现有矩阵 matrix 如下:

1
2
3
4
5
6
7
[
[1, 4, 7, 11, 15],
[2, 5, 8, 12, 19],
[3, 6, 9, 16, 22],
[10, 13, 14, 17, 24],
[18, 21, 23, 26, 30]
]

给定 target = 5,返回 true。

给定 target = 20,返回 false。

Read more »

深入理解JVM第二章:自动内存管理

Posted on 2020-07-24 | In java , jvm

一、运行时数据区

前面两个部分都是了解了的。

3. HotSpot虚拟机对象探秘:

3.1 对象的创建

  1. JVM遇到一个new关键字后:

    • 在常量池中看能够定位 类的符号引用, 并检查这个符号引用代表的类是否被加载,解析和初始化过。没有的话就加载这个类;
  2. 接着为新生对象分配内存:这里讨论了三种分配内存的方式

  • 假设内存绝对规整: 一端使用过的,另一端是没用过的: 把指针向空闲的那边移动需要空间大小就好 (指针碰撞)
  • 使用过的内存和空闲内存交错在一起, 就需要维护一个内存空闲列表; 从中挑选出需要大小的一片内存,进行分配;
  • 给每个线程划分一块自己的私有内存区域: 本地线程分配缓冲(Thread Local Allocation Buffer, TLAB)
    • 虚拟机使用TLAB: -XX:+/-UseTLAB
  1. JVM给对象进行必要的设置: Object.Class, Hashcode, 类的元数据信息, 对象的GC分代年龄 ( 放在对象的对象头里)
  2. 这些做完JVM就创建了一个对象; 但JAVA程序才开始用构造函数初始化这个实例化对象
Read more »
上一页1…345…7下一页

Deep ploughing those days ​​​​

62 posts
39 categories
61 tags
E-Mail
Links
  • fivelike
  • ReachDong(dada)
© 2021
Powered by Hexo
|
Theme — NexT.Gemini v5.1.4