自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(38)
  • 收藏
  • 关注

原创 leetcode刷题:每日一题-1631. 最小体力消耗路径

思路:迪杰斯特拉最短路径应用到该题,初步思想:将每个空格看作每个节点,相邻的节点之间存在边,边的权值为相邻值的高度差,求左上角到右下角的最小体力消耗,即为类似求原点到终点的路径。(会超越时间限制)官方思路:(迪杰斯特拉:)利用优先队列存储节点坐标(x,y)和当前时刻原点到该点的最小体力消耗值(d),优先队列以d值降序排序,(priority_queue每次都是从队尾取元素的,所以使用top()返回的是排序后的最后一个元素。),然后用top取出下一个节点,对该节点的所有邻居节点进行更新。class S.

2021-01-30 20:31:59 219 1

原创 leetcode刷题:每日一题-724. 寻找数组的中心索引 、剑指 Offer 09. 用两个栈实现队列和队列实现栈 and 牛客网刷题:找到字符串的最长无重复字符子串

思路:先求整个数组的和,然后从头求和,当遍历到某数时,此时该和=(总和-该值)/2时,说明该数就是中心索引。class Solution {public: int pivotIndex(vector<int>& nums) { if (nums.empty()) return -1; int n = nums.size(); int sum=0; int sum_new=0; .

2021-01-29 18:44:15 128

原创 leetcode刷题:岛屿问题(并查集)

并查集思想:将大问题的研究对象首先初始化为最具体的个体(各自为阵),然后利用题目给的条件(边相连或同数相邻等),将独立的个体建立联系,并决定服从关系,哪个个体服从哪个个体?然后独立个体数减一,之后遍历题目条件时,便可通过find函数判断是否存在在同一个团体中,最后求团体个数时,只要求独立个体数量就行。应用示例:判断区域数量,特殊kruskal算法等class Solution {public: int numIslands(vector<vector<char>>&a.

2021-01-29 16:01:49 286 1

原创 leetcode刷题:每日一题:1128. 等价多米诺骨牌对的数量 and 牛客网刷题:两数之和 and 合并两个有序的数组

参考思路:注意点一:牌值为10以内的数组成,且两位数组成只为100以内的数,可用该两位数作为hash方法存储的地址,在数组中存储牌对数量。注意点二:反转相等,则可自己制定规则,二维数据中,第一维始终小于第二维的数。注意点三:如果牌对数为n,则能组成的排列数为Cn2class Solution {public: int numEquivDominoPairs(vector<vector<int>>& dominoes) { if (domin.

2021-01-27 12:51:14 128

原创 leetcode刷题:剑指 Offer 07. 重建二叉树 and 牛客网刷题:合并有序列表 and 用两个栈实现队列

重点思路:如何通过递归函数建立二叉树?!!如何从前序中序中获得二叉树的具体情况?前序第一个数必定为根节点,在中序中找根节点的位置,位置左边的数在根节点的左子树中,右边的数在根节点的右子树中,并层层递归。/** * Definition for a binary tree node. * struct TreeNode { * int val; * TreeNode *left; * TreeNode *right; * TreeNode(int x) :.

2021-01-25 22:16:17 75

原创 leetcode刷题:剑指 Offer 06. 从尾到头打印链表 and 牛客网刷题:求二叉树的层序遍历 and 寻找第K大

剑指offer三种思路:1、栈存储输出 2、递归思想 3、链表反转class Solution {public: vector<int> reversePrint(ListNode* head) { vector<int> result; //栈方法 // stack<ListNode*> s; // ListNode* node = head; // while( node.

2021-01-22 16:10:09 56

原创 leetcode刷题:剑指 Offer 05. 替换空格 and 牛客网刷题:跳台阶

剑指offer思路:用char数组存储字符串,确保数组足够大的情况下从后往前更改数组值;题目用string字符串变量,所以解题稍有更改;当然还有更方便的封装函数。class Solution {public: string replaceSpace(string s) { string x = ""; if ( s.empty()) return ""; else { int le.

2021-01-21 13:26:29 94

原创 leetcode刷题:剑指 Offer 04. 二维数组中的查找 and 牛客网刷题:最小的k个数

剑指offer思路:因为矩阵中的任意一个数的右下侧的数一定比该数大,左上侧的数一定比该数小,所以思考挑选一个位置的数,和目标进行比较,然后剔除部分数据,减少比较量。亮点:选择右上角或者左下角的数最好!以右上角为例,若该数比目标大,那么说明该数所在列的所有值均比目标大,剔除该列;若该数比目标小,则说明该数所在行的所有值均比目标小,剔除该行。class Solution {public: bool findNumberIn2DArray(vector<vector<int>&g.

2021-01-20 10:23:19 92

原创 leetcode刷题:剑指 Offer 03. 数组中重复的数字 and 牛客网刷题:二分查找第一个大于等于某值的位置

1、思考直接排序+对比前后元素,排序算法采用快排,但不知为何结果显示:超过时间限制(可能递归调用耗时较多),调用C++自带的sort排序能够实现,并不超时。2、hash表方法,映射3、辅助空间为O(1)的算法class Solution {public: typedef struct { int *elem; int count; }HashTable; int findRepeatNumber(vector<int>&.

2021-01-16 23:33:27 162

原创 牛客网刷题——二叉树前序、中序和后序遍历

递归方法和前中的非递归方法/** * struct TreeNode { * int val; * struct TreeNode *left; * struct TreeNode *right; * }; */class Solution {public: /** * * @param root TreeNode类 the root of binary tree * @return int整型vector<vector<>&g.

2021-01-15 23:15:54 169

原创 牛客网刷题:利用空间复杂度O(1),判断链表是否有环

@牛客网刷题:利用空间复杂度O(1),判断链表是否有环解题思路:快慢指针,一个指针走一步,另一个指针走两步,如果没有环,则快指针肯定先到指针末尾,如果有环,则总有一天快指针追上慢指针;/** * Definition for singly-linked list. * struct ListNode { * int val; * ListNode *next; * ListNode(int x) : val(x), next(NULL) {} * }; */cl

2021-01-14 23:00:48 508

原创 小甲鱼系列入门视频30【爬虫之正则表达式1、2】

今日注意点: 1、re模块,“.”点号代表任何字符,加/反斜杠返回原字符,\d表示匹配所有十进制数字, https://fishc.com.cn/forum.php?mod=viewthread&amp;tid=57073&amp;extra=page%3D1%26filter%3Dtypeid%26typeid%3D403 2、”^Foyn”必须在开头检索, “you$”必须在结尾检索,*...

2018-09-10 21:33:37 447

原创 小甲鱼系列入门练习29【爬虫之download】

今日注意点: 1、创建文件夹,制定路径 2、找到图片和页码的关系,找到图片源地址和页码,组合成网页地址。 3、从该网页上下载图片,保存到指定文件夹。 运行结果: ...

2018-09-08 16:15:47 447 1

原创 小甲鱼系列入门练习28【爬虫3】

今日注意点: 1、隐藏、代理 2、调用有道云翻译 day28-1 day28-2 运行结果:

2018-09-08 15:59:02 184

原创 小甲鱼系列入门练习27【论一只爬虫的自我修养:实战1】

今日注意点: 1、从网上爬取网站源代码 2、从网上爬取图片,调用有道api翻译。 day27-1 运行结果: day27-2 运行结果:

2018-09-05 20:14:49 1038 1

原创 小甲鱼系列入门练习26【模块就是程序,模块:搜索路径和包】

今日注意点: 1、模块:更高级的封装,import 模块名; from 模块名 import 函数名;import 模块名 as 新名字 2、模块:搜索路径和包,if name==’main‘; 搜索路径;包:创建一个文件夹,在文件夹中创建一个initial模块文件,将相关的文件放入文件夹中 3、模块:像个极客一样去思考 https://fishc.com.cn/forum.php?mo...

2018-09-03 20:38:00 172

原创 小甲鱼系列入门练习25【迭代器、生成器】

今日注意点: 1、迭代器:调用iter()得到迭代器,调用next()迭代器返回下一个值。 2、生成器:yield,列表推导式a=(i for i in range(100) if not(i%2)) https://fishc.com.cn/forum.php?mod=viewthread&amp;tid=56023&amp;extra=page%3D1%26filter%3Dtypeid...

2018-09-03 18:33:42 214

原创 小甲鱼系列入门练习24【描述符,定制序列】

1、描述符:property的原理,建立华氏摄氏度和温度的练习 2、定制容器:协议(指南), day24-1 运行结果 day24-2 运行结果:

2018-09-02 22:58:41 630 1

原创 小甲鱼系列入门练习23【魔法方法:简单定制】

今日注意点: 1、简单定制:time模块详解 https://fishc.com.cn/forum.php?mod=viewthread&amp;tid=51326&amp;extra=page%3D1%26filter%3Dtypeid%26typeid%3D403 2、属性访问:getattr,getattribute,setattr day23-1 运行结果: ...

2018-08-31 22:12:29 365

原创 小甲鱼系列入门训练22【魔法方法:算数运算】

今日注意点: 1、算术运算:divmod(self,other):(a//b,a%b),pow, 2、 https://fishc.com.cn/forum.php?mod=viewthread&amp;tid=48793&amp;extra=page%3D1%26filter%3Dtypeid%26typeid%3D403 day22-1 运行结果: day22-2 运...

2018-08-30 20:19:02 227 2

原创 小甲鱼系列入门练习21——类的一些相关函数、

今日注意点: 1、判定类属于子类:issubclass,检查实例对象是否属于一个类:isinstance(),测试对象是否有指定属性:hasattr(),getattr(),setattr(),delattr(), property()(用户体验感提升) 2、魔法方法:构造和析构,init,new,del, day21-1 运行结果: day21-2 运行结果: ...

2018-08-29 21:33:05 172

原创 小甲鱼系列入门练习20

今日注意点: 1、继承class DerivedClassName(BaseClassName):,自动覆盖父类与子类的同名的函数,避免继承的父类的方法被覆盖:1、调用未绑定的父类方法,2、使用super函数, 2、横向类之间建立关系:组合,纵向类之间建立关系:继承,Mix-in,类,类对象和实例对象,绑定 day20-1 运行结果: day20-2 运行结...

2018-08-28 21:28:14 871 1

原创 小甲鱼系列入门练习19

今日注意点: 1、class()类=属性+方法,生成对象、oo的特征:封装+继承+多态 2、self相当于this指针,init(self,param1,param2)(将参数反应打到类),公有和私有的,name mangling(名字改编,名字重整) day19-1 运行结果: day19-2 运行结果: ...

2018-08-27 22:14:40 365 1

原创 小甲鱼系列入门练习18

今日注意点: 1、丰富的else语句,简洁的with语句 2、图形用户界面入门:EasyGui https://fishc.com.cn/forum.php?mod=viewthread&amp;tid=46069&amp;extra=page%3D1%26filter%3Dtypeid%26typeid%3D403 day18 运行结果: ...

2018-08-25 21:45:10 220

原创 小甲鱼系列入门练习17

今日注意点:异常子版块 https://fishc.com.cn/forum.php?mod=viewthread&amp;tid=45814&amp;extra=page%3D1%26filter%3Dtypeid%26typeid%3D403异常的处理和检测,将程序员看得懂的错误转换为客户看得懂的中文语言。 day17-1 运行结果: day17-2 运行结果: ...

2018-08-24 20:24:29 201 1

原创 小甲鱼系列入门练习16

今日注意点: 1、os操作系统和os操作模块, https://fishc.com.cn/forum.php?mod=viewthread&amp;tid=45512&amp;extra=page%3D1%26filter%3Dtypeid%26typeid%3D403 2、模块:pickle模块(泡菜模块)调用天气数据 打印16-1 运行结果 day’16-2 运行结果...

2018-08-23 15:22:28 282

原创 小甲鱼系列入门练习15

今日注意点: 1、复习字典,字典的表亲:集合(没有映射关系),(集合元素具有唯一性), 2、剔除列表里的重复的元素:1、用temp剔除重复元素,再一一打印。2、用集合的方法自动剔除重复元素(但会自动排序,打乱顺序) 3、如何访问:1、for语句一一读取2、in和not in判断元素是否在集合中。 4、frozenset:不可变集合 5、文件:open,read,close,tell ...

2018-08-21 20:31:57 180 1

原创 小甲鱼系列入门练习14

今日注意点: 1、字典:当索引不好用时,映射,创建和访问字典(字典是{}), 2、字典:当索引不好用时,工厂函数(),fromkeys(),keys()s,values(),items(),get(),pop,popitem(随机弹出一个数),setdefault(),update() day14 运行结果: day14-2 运行结果: ...

2018-08-20 20:45:37 159 1

原创 小甲鱼系列入门训练13

今日注意点: 1、递归之小兔崽子 2、递归之汉诺塔 day13 运行结果: day13-2 运行结果:

2018-08-20 17:40:06 142

原创 小甲鱼系列入门练习12

今日注意点: 1、匿名函数(lambdax:2*x+1),lambdab表达式的作用,筛选函数filter(),映射函数map()。 2、递归算法(F(n)=F(n-1)*a),树结构的定义,谢尔宾斯基三角形, day12-1 运行结果: day12-2 运行结果: ...

2018-08-18 23:17:03 135

原创 小甲鱼系列入门练习11

今日要点: 1、函数与过程,返回值(可以返回多个值),函数变量的作用域(函数的局部变量和全局变量) 2、内嵌函数和闭包,global关键字,内嵌函数,闭包 global:将局部变量覆盖全局变量 nonlocal:将局部变量变成可以被子函数引用 day11-1 运行结果: day11-2 运行结果: ...

2018-08-17 15:23:08 234 1

原创 小甲鱼系列入门训练10

今日注意点: 1、函数、对象、模块。创建函数注意第一句末尾要加“:”,利用return()返回函数结果。 2、形参和实参,函数文档,关键字参数,默认参数,收集参数。 day10-1 运行结果: 10-2 运行结果: ...

2018-08-16 16:12:57 126

原创 小甲鱼系列入门练习9

今日注意点: 1、字符串格式化链接网站(小甲鱼) https://fishc.com.cn/forum.php?mod=viewthread&amp;tid=92997&amp;extra=page%3D1%26filter%3Dtypeid%26typeid%3D403 day9-1 运行结果: day9-2 运行结果: ...

2018-08-16 14:56:59 230

原创 小甲鱼系列入门练习8

今日学习注意点: 1、计数count、记位置index、翻转reverse、排序sort、拷贝【:】 2、特别注意元组和列表的区别: 1、元组不能被修改,列表可以. 2、元组是(),列表是【】 3、元组特点是有“ , ”。 3、一系列字符串的方法和注释:(出自小甲鱼系列视频)https://fishc.com.cn/forum.php?mod=view...

2018-08-14 15:59:05 125 1

原创 小甲鱼系列入门练习7

添加列表参数的append,extend,insert 消除列表参数的remove,del,pop day7 运行结果:

2018-08-13 20:33:54 169 1

原创 小甲鱼系列入门练习6

今日学习注意点: 1、if 选择语句单纯用if,会使cpu占用量过大;优化方法:Python专用elif,减少cpu占用量的同时,减少代码量。 2、三目运算符 3、每个循环语句后都要加冒号“:”,否则语句不对。 4、range() 5、break和continue break:只有当break触发,才跳出循环,否则如流氓软件一样。 continue:一旦触发continue,马上跳出...

2018-08-12 20:19:26 186 1

原创 小甲鱼系列入门练习5

今日学习注意点: 优先级问题 day5 运行结果 游戏框架

2018-08-11 16:38:38 198

原创 小甲鱼系列1234

初学注意点: 运行代码:Ctrl+F10 PYthon特别注意首行缩进对齐。 字符串可用“”或‘’,但必须配对 day3 运行结果 day4 运行结果

2018-08-10 17:05:45 291 1

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除