12 2020 档案

摘要:1 二叉树递归灵魂三问 这个函数应该干什么? 函数功能 正向逻辑推理 base case是啥? 得到递归结果后,会做什么? 反向逻辑推理 下面使用一个题目来示例一下。 2 题目 2.1 236. 二叉树的最近公共祖先 2.1.1 题目 给定一个二叉树, 找到该树中两个指定节点的最近公共祖先。 百度百 阅读全文
posted @ 2020-12-24 23:07 Cigar丶 阅读(162) 评论(0) 推荐(0)
摘要:1. 内部类 在Java中有一种类,被定义在一个类的内部,它被称为内部类(Nested Class)。Java中常见的内部类有三种,Inner Class,Anonymous Class,Static Nested Class。 2. Inner Class 有如下代码 public class M 阅读全文
posted @ 2020-12-24 20:52 Cigar丶 阅读(79) 评论(0) 推荐(0)
摘要:1. 抽象类和接口的区别 类可以实现无限个接口,但只能从一个抽象类继承。 抽象类中可以存在并实现非抽象方法,但接口里面的方法只能是public且没有实现的。 抽象类的成员变量可以被不同的修饰符来修饰,但接口的成员变量只能是静态常量(static final)。 抽象类是对象的抽象,接口是一种行为规范 阅读全文
posted @ 2020-12-23 21:39 Cigar丶 阅读(374) 评论(0) 推荐(0)
摘要:1. 继承 1.1 super的用法 在Java中,任何class的构造方法,第一行语句必须是调用父类的构造方法。 如果没有明确地调用父类的构造方法,编译器会帮我们自动加一句super()。 下面代码定义了人和学生类的继承关系: class Person { String name; int age 阅读全文
posted @ 2020-12-22 20:14 Cigar丶 阅读(83) 评论(0) 推荐(0)
摘要:原题目 面试题 01.09. 字符串轮转 字符串轮转。给定两个字符串s1和s2,请编写代码检查s2是否为s1旋转而成(比如,waterbottle是erbottlewat旋转后的字符串)。 示例1: 输入:s1 = "waterbottle", s2 = "erbottlewat" 输出:True 阅读全文
posted @ 2020-12-21 22:50 Cigar丶 阅读(106) 评论(0) 推荐(0)
摘要:原题目 面试题 01.08. 零矩阵 编写一种算法,若M × N矩阵中某个元素为0,则将其所在的行与列清零。 示例 1: 输入: [ [1,1,1], [1,0,1], [1,1,1] ] 输出: [ [1,0,1], [0,0,0], [1,0,1] ] 示例 2: 输入: [ [0,1,2,0] 阅读全文
posted @ 2020-12-21 22:49 Cigar丶 阅读(159) 评论(0) 推荐(0)
摘要:原题目 面试题 01.07. 旋转矩阵 给你一幅由 N × N 矩阵表示的图像,其中每个像素的大小为 4 字节。请你设计一种算法,将图像旋转 90 度。 不占用额外内存空间能否做到? 示例 1: 给定 matrix = [ [1,2,3], [4,5,6], [7,8,9] ], 原地旋转输入矩阵, 阅读全文
posted @ 2020-12-21 22:48 Cigar丶 阅读(100) 评论(0) 推荐(0)
摘要:原题目 面试题 01.06. 字符串压缩 字符串压缩。利用字符重复出现的次数,编写一种方法,实现基本的字符串压缩功能。比如,字符串aabcccccaaa会变为a2b1c5a3。若“压缩”后的字符串没有变短,则返回原先的字符串。你可以假设字符串中只包含大小写英文字母(a至z)。 示例1: 输入:"aa 阅读全文
posted @ 2020-12-21 22:47 Cigar丶 阅读(149) 评论(0) 推荐(0)
摘要:原题目 面试题 01.05. 一次编辑 字符串有三种编辑操作:插入一个字符、删除一个字符或者替换一个字符。 给定两个字符串,编写一个函数判定它们是否只需要一次(或者零次)编辑。 示例 1: 输入: first = "pale" second = "ple" 输出: True 示例 2: 输入: fi 阅读全文
posted @ 2020-12-21 22:46 Cigar丶 阅读(87) 评论(0) 推荐(0)
摘要:原题目 面试题 01.04. 回文排列 给定一个字符串,编写一个函数判定其是否为某个回文串的排列之一。 回文串是指正反两个方向都一样的单词或短语。排列是指字母的重新排列。 回文串不一定是字典当中的单词。 示例1: 输入:"tactcoa" 输出:true(排列有"tacocat"、"atcocta" 阅读全文
posted @ 2020-12-21 22:45 Cigar丶 阅读(111) 评论(0) 推荐(0)
摘要:原题目 面试题 01.03. URL化 URL化。编写一种方法,将字符串中的空格全部替换为%20。假定该字符串尾部有足够的空间存放新增字符,并且知道字符串的“真实”长度。(注:用Java实现的话,请使用字符数组实现,以便直接在数组上操作。) 示例1: 输入:"Mr John Smith ", 13 阅读全文
posted @ 2020-12-21 22:44 Cigar丶 阅读(99) 评论(0) 推荐(0)
摘要:原题目 面试题 01.02. 判定是否互为字符重排 给定两个字符串 s1 和 s2,请编写一个程序,确定其中一个字符串的字符重新排列后,能否变成另一个字符串。 示例 1: 输入: s1 = "abc", s2 = "bca" 输出: true 示例 2: 输入: s1 = "abc", s2 = " 阅读全文
posted @ 2020-12-21 22:42 Cigar丶 阅读(101) 评论(0) 推荐(0)
摘要:原题目 面试题 01.01. 判定字符是否唯一 实现一个算法,确定一个字符串 s 的所有字符是否全都不同。 示例 1: 输入: s = "leetcode" 输出: false 示例 2: 输入: s = "abc" 输出: true 限制: 0 <= len(s) <= 100 如果你不使用额外的 阅读全文
posted @ 2020-12-21 22:39 Cigar丶 阅读(95) 评论(0) 推荐(0)
摘要:Numpy数据存取与函数 一维和二维数据的存取 CSV文件, np.loadtxt(), np.savetxt() 多维数据的存取 a.tofile(), np.fromfile() np.save(), np.load() numpy的随机函数(np.random) rand(), randn() 阅读全文
posted @ 2020-12-21 13:45 Cigar丶 阅读(113) 评论(0) 推荐(0)
摘要:[一] Numpy入门 传统计算方法与numpy比较 ndarray数组的属性 ndarray数组的创建 ndarray数组的变换 ndarray数组的索引和切片 ndarray数组的运算 In [2]: import numpy as np 传统计算方法与numpy比较 In [4]: def p 阅读全文
posted @ 2020-12-21 13:44 Cigar丶 阅读(75) 评论(0) 推荐(0)
摘要:前言 前一段时间基于LeNet-5实现了MNIST手写数字识别,由于torchvision.datasets模块集成了MNIST数据集,所以在加载数据时使用的是torchvision.datasets自带的方法,缺失了如何对一般数据集的处理部分,不能将其作为一个模板来适用于新的网络。通常,我们需要为 阅读全文
posted @ 2020-12-21 13:43 Cigar丶 阅读(1116) 评论(0) 推荐(0)
摘要:交叉熵损失函数原理详解 之前在代码中经常看见交叉熵损失函数(CrossEntropy Loss),只知道它是分类问题中经常使用的一种损失函数,对于其内部的原理总是模模糊糊,而且一般使用交叉熵作为损失函数时,在模型的输出层总会接一个softmax函数,至于为什么要怎么做也是不懂,所以专门花了一些时间打 阅读全文
posted @ 2020-12-21 13:41 Cigar丶 阅读(1164) 评论(0) 推荐(0)
摘要:PyTorch基础知识总结 Tensor(张量) 张量是PyTorch里的基本运算单位,与numpy的ndarray相同都表示一个多维的矩阵。与ndarray最大的区别在于Tensor能使用GPU加速,而ndarray只能用在CPU上。 与Numpy之间进行转换 将Tensor转换成numpy,只需 阅读全文
posted @ 2020-12-21 13:39 Cigar丶 阅读(351) 评论(0) 推荐(0)
摘要:LeNet-Pytorch-MNIST手写数字识别 近几年,基于深度学习的应用越来越多,可以说深度学习已经遍及我们生活的各个角落。同时卷积神经网络(CNN: Convolution Neural Network)在计算机视觉领域大放光彩,作为一名没有跨入深度学习门槛的萌新,在迷茫了一阵时间以后,还是 阅读全文
posted @ 2020-12-21 13:38 Cigar丶 阅读(1289) 评论(1) 推荐(1)
摘要:Numpy索引与切片操作 单元素索引 一维数据的单元素索引是最简单的一种索引方式,与Python列表的操作完全一致。 >>> x = np.arange(10) >>> x array([0, 1, 2, 3, 4, 5, 6, 7, 8, 9]) >>> x[2] 2 二维以及多维数据的单元素索引 阅读全文
posted @ 2020-12-21 13:36 Cigar丶 阅读(184) 评论(0) 推荐(0)