首页
Python
Java
前端
数据库
Linux
Chatgpt专题
开发者工具箱
零学专题
从零学爬虫:使用比如说说解析网页结构
新书上架~👇全国包邮奥~ python实用小工具开发教程http://pythontoolsteach.com/3 欢迎关注我👆,收藏下次不迷路┗|`O′|┛ 嗷~~ 目录 一、引言 二、网页结构概述 示例:查看网页结构 三、使用比如说说解析网页 1. 安装bs4 2. 导入并使用bs4 示例:定位并提取a标签 代码示例 四、总结 一
阅读更多...
从零学算法994
994. 腐烂的橘子 在给定的 m x n 网格 grid 中,每个单元格可以有以下三个值之一: 值 0 代表空单元格; 值 1 代表新鲜橘子; 值 2 代表腐烂的橘子。 每分钟,腐烂的橘子 周围 4 个方向上相邻 的新鲜橘子都会腐烂。 返回 直到单元格中没有新鲜橘子为止所必须经过的最小分钟数。如果不可能,返回 -1 。 示例 1: 输入:grid = [[2,1,1],[1,1,0],[0,1
阅读更多...
从零学算法68
68. 文本左右对齐 给定一个单词数组 words 和一个长度 maxWidth ,重新排版单词,使其成为每行恰好有 maxWidth 个字符,且左右两端对齐的文本。 你应该使用 “贪心算法” 来放置给定的单词;也就是说,尽可能多地往每行中放置单词。必要时可用空格 ’ ’ 填充,使得每行恰好有 maxWidth 个字符。 要求尽可能均匀分配单词间的空格数量。如果某一行单词间的空格不能均匀分配,则
阅读更多...
从零学算法14
14. 最长公共前缀 编写一个函数来查找字符串数组中的最长公共前缀。 如果不存在公共前缀,返回空字符串 “”。 示例 1: 输入:strs = [“flower”,“flow”,“flight”] 输出:“fl” 示例 2: 输入:strs = [“dog”,“racecar”,“car”] 输出:“” 解释:输入不存在公共前缀。 提示: 1 <= strs.length <= 200 0 <=
阅读更多...
从零学算法1017
1017. 负二进制转换 给你一个整数 n ,以二进制字符串的形式返回该整数的 负二进制(base -2)表示。 注意,除非字符串就是 “0”,否则返回的字符串中不能含有前导零。 示例 1: 输入:n = 2 输出:“110” 解释:(-2)2 + (-2)1 = 2 示例 2: 输入:n = 3 输出:“111” 解释:(-2)2 + (-2)1 + (-2)0 = 3 示例 3: 输入:n
阅读更多...
从零学算法135
135. 分发糖果 n 个孩子站成一排。给你一个整数数组 ratings 表示每个孩子的评分。 你需要按照以下要求,给这些孩子分发糖果: 每个孩子至少分配到 1 个糖果。 相邻两个孩子评分更高的孩子会获得更多的糖果。 请你给每个孩子分发糖果,计算并返回需要准备的 最少糖果数目 。 示例 1: 输入:ratings = [1,0,2] 输出:5 解释:你可以分别给第一个、第二个、第三个孩子分发 2
阅读更多...
从零学算法377
377. 组合总和 Ⅳ 给你一个由 不同 整数组成的数组 nums ,和一个目标整数 target 。请你从 nums 中找出并返回总和为 target 的元素组合的个数。 题目数据保证答案符合 32 位整数范围。 示例 1: 输入:nums = [1,2,3], target = 4 输出:7 解释: 所有可能的组合为: (1, 1, 1, 1) (1, 1, 2) (1, 2, 1) (1,
阅读更多...
DeepMind提出强化学习新算法,教智能体从零学控制
AI 科技评论按:不管你让小孩还是大人整理物品,他们很大可能都不会乖乖听你的话,如果想要让 AI 智能体进行整理收拾,那就更难了。如果想成功,需要掌握如下几个核心视觉运动技能:接近物体,抓住并举起它,打开盒子,把物体放进去。而更复杂的是,执行这些技能时,必须按照正确的顺序。 对于一些控制类的任务,比如整理桌面或堆叠物体,智能体需要在协调它的模拟手臂和手指的九个关节时,做到三个 W,即如何(ho
阅读更多...
从零学算法80
80. 删除有序数组中的重复项 II 给你一个有序数组 nums ,请你 原地 删除重复出现的元素,使得出现次数超过两次的元素只出现两次 ,返回删除后数组的新长度。 不要使用额外的数组空间,你必须在 原地 修改输入数组 并在使用 O(1) 额外空间的条件下完成。 说明: 为什么返回数值是整数,但输出的答案是数组呢? 请注意,输入数组是以「引用」方式传递的,这意味着在函数里修改输入数组对于调用者是
阅读更多...
从零学算法208
208.Trie(发音类似 “try”)或者说 前缀树 是一种树形数据结构,用于高效地存储和检索字符串数据集中的键。这一数据结构有相当多的应用情景,例如自动补完和拼写检查。 请你实现 Trie 类: Trie() 初始化前缀树对象。 void insert(String word) 向前缀树中插入字符串 word 。 boolean search(String word) 如果字符串 word
阅读更多...
从零学Python:第十五课-常用数据结构之字典
又是一次敲黑板的干货分享了! 迄今为止,我们已经为大家介绍了Python中的三种容器型数据类型,但是这些数据类型还不足以帮助我们解决所有的问题。例如,我们要保存一个人的信息,包括姓名、年龄、体重、单位地址、家庭住址、本人手机号、紧急联系人手机号等信息,你会发现我们之前学过的列表、元组和集合都不是最理想的选择。 person1 = ['王大锤', 55, 60, '科华北路62号', '中同仁路
阅读更多...
从零学算法212
212.给定一个 m x n 二维字符网格 board 和一个单词(字符串)列表 words, 返回所有二维网格上的单词 。 单词必须按照字母顺序,通过 相邻的单元格 内的字母构成,其中“相邻”单元格是那些水平相邻或垂直相邻的单元格。同一个单元格内的字母在一个单词中不允许被重复使用。 示例 1: 输入:board = [[“o”,“a”,“a”,“n”],[“e”,“t”,“a”,“e”],[“
阅读更多...
从零学算法23
23.给你一个链表数组,每个链表都已经按升序排列。 请你将所有链表合并到一个升序链表中,返回合并后的链表。 示例 1: 输入:lists = [[1,4,5],[1,3,4],[2,6]] 输出:[1,1,2,3,4,4,5,6] 解释:链表数组如下: [ 1->4->5, 1->3->4, 2->6 ] 将它们合并到一个有序链表中得到。 1->1->2->3->4->4->5->6 示例 2:
阅读更多...
从零学算法287
287.给定一个包含 n + 1 个整数的数组 nums ,其数字都在 [1, n] 范围内(包括 1 和 n),可知至少存在一个重复的整数。 假设 nums 只有 一个重复的整数 ,返回 这个重复的数 。 你设计的解决方案必须 不修改 数组 nums 且只用常量级 O(1) 的额外空间。 示例 1: 输入:nums = [1,3,4,2,2] 输出:2 示例 2: 输入:nums = [3,1
阅读更多...
从零学算法172
172.给定一个整数 n ,返回 n! 结果中尾随零的数量。 提示 n! = n * (n - 1) * (n - 2) * … * 3 * 2 * 1 示例 1: 输入:n = 3 输出:0 解释:3! = 6 ,不含尾随 0 示例 2: 输入:n = 5 输出:1 解释:5! = 120 ,有一个尾随 0 示例 3: 输入:n = 0 输出:0 首先得找到规律,我们在得到阶乘结果时,其
阅读更多...
跟我从零学Java
·了解计算机 通俗地讲,计算机是个“超级工具”,是个能执行命令的电子设备。几乎所有的计算机都遵循冯·诺伊曼的“存储--运行”结构,它将计算机主要分为以下5个部分:输入、输出、存储器、运算器和控制器。冯·诺伊曼体系结构如图1所示: 图1 计算机组成 采用该存储结构的工作原理:把计算过程描述为由许多条命令按一定顺序组成的程序,然后把程序和所需要的数据一起输入计算机存储器中保存起
阅读更多...
从零学算法347
347.给你一个整数数组 nums 和一个整数 k ,请你返回其中出现频率前 k 高的元素。你可以按 任意顺序 返回答案。 示例 1: 输入: nums = [1,1,1,2,2,3], k = 2 输出: [1,2] 示例 2: 输入: nums = [1], k = 1 输出: [1] 思路就是记录每个数出现的个数,然后取出现频率前 k 高的数,无非就是使用的方法不同。这里先用 Has
阅读更多...
从零学Java - 枚举
Java - 枚举 文章目录 Java - 枚举1 什么是枚举?2 注意事项3 好处4 枚举的本质 1 什么是枚举? 枚举是一个引用类型,枚举是一个规定了取值范围的数据类型。 2 注意事项 定义枚举使用enum关键字。枚举中主要包含常量, 多个常量使用逗号隔开,最后的分号可写可不写。枚举中也可以包含属性,方法,和私有构造方法,但是必须在常量的后面 (一般不写) 3 好处
阅读更多...
从零学Java 多线程(基础)
Java 多线程(基础) 文章目录 Java 多线程(基础)1 多线程1.1 多任务1.2 多线程1.3 普通方法调用和多线程 2 进程和线程2.1 什么是进程(Process)?2.2 什么是线程(Thread)?2.3 进程和线程的区别 3 线程的实现3.1 线程的组成3.2 线程执行特点3.3 线程的创建3.3.1 继承Thread类3.3.2 实现Runnable接口
阅读更多...
从零学Java 泛型
Java 泛型 文章目录 Java 泛型1 什么是泛型?2 泛型类3 泛型接口4 泛型方法5 泛型集合 Collection 工具类 1 什么是泛型? Java泛型是JDK1.5中引入的一个新特性,其本质是参数化类型,把类型作为参数传递。 常见形式有泛型类、泛型接口、泛型方法。 语法 : <T,…> :T称为类型占位符,表示一种引用数据类型(一般使用一个大写字母表示)。多
阅读更多...
从零学Java 集合概述
Java 集合概述 文章目录 Java 集合概述1 什么是集合?2 Collection体系集合2.1 Collection父接口2.1.1 常用方法2.1.2 Iterator 接口 1 什么是集合? 概念:对象的容器,定义了对多个对象进行操作的常用方法;可实现数组的功能。 和数组区别: 数组长度固定,集合长度不固定。数组可以存储基本类型和引用类型,集合只能存
阅读更多...
从零学Java 常用类
Java 常用类 文章目录 Java 常用类1 BigDecimal1.1 为什么要用BigDecimal类?1.2 什么是BigDecimal类?1.3 常用方法 2 Math2.1 什么是Math类?2.2 常用方法 3 Random3.1 什么是Random类3.2 常用方法 4 Date4.1 什么是Date类?4.2 常用方法 5 SimpleDateFormat5.1 什么是S
阅读更多...
从零学Java - String类
Java String类 文章目录 Java String类1 String1.1 常用两种创建方式1.2 比较两种创建方式1.3 字符串不可变性1.4 面试题 2 常用方法2.1 练习 3 可变字符串3.1 常用方法3.2 验证StringBuilder的高效性3.3 练习3.4 面试题: 4 正则表达式4.1 元字符4.2 其他字符4.2.1 预定义字符4.2.2 边界匹配4.2.3
阅读更多...
从零学Java Object类
Java Object类 文章目录 Java Object类Object类Object类中的方法1 getClass()方法2 hashCode()方法3 toString()方法4 equals()方法面试题: == 和 equals 方法的区别? 5 finalize()方法(JDK1.9放弃 了解即可) Object类 所有类的直接或间接继承Object,位于继承树的
阅读更多...
从零学Java 内部类
Java 内部类 文章目录 Java 内部类1 什么是内部类?2 内部类的分类2.1 成员内部类2.2 静态内部类2.3 局部内部类2.4 匿名内部类 1 什么是内部类? 概念: 在一个类的内部再定义一个完整的类, 内层的类称为内部类 特点: 编译之后可生成独立的字节码文件 内部类可以访问外部类的私有成员, 而不破坏封装 可为外部类提供必要的功能 2 内部类的
阅读更多...
动画:动画从零学编程之 “栈” 你掌握这些必备了吗?
作者 | 小鹿 来源 | 小鹿动画学编程 写在前边 对于栈的认识,相信每个学习数据结构的小伙伴多多少少有一定的认识和了解。很多刚刚学习的小伙伴说学习数据结构在实际中没怎么见到应用,那是因为你没有去仔细的观察,而且像栈这常用到的数据结构通常会使用在实际开发中,比如:表达式的运算、花括号的匹配以及浏览器的前进后退等等很多。 这些实际开发的实现如果不去研究,你永远不知道数据结构在实际中的应用,
阅读更多...