自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 算法-数对的使用

【代码】算法-数对的使用。

2025-05-19 20:18:50 272

原创 算法-优先队列

【代码】算法-优先队列。

2025-05-19 19:49:17 55

原创 Dijkstra算法

【代码】Dijkstra算法。

2025-04-08 15:32:17 103

原创 最长公共子序列

若要输出最长公共子序列中的元素,可以使用递归调用LCS函数。

2025-04-07 21:09:13 114

原创 算法-尼姆博弈

Nim游戏是一个二人博弈,游戏的初始状态为有n堆石子,每堆石子的数量可以是任意自然数。双方轮流进行行动,每次行动可以从任意一堆石子中取走若干个石子(不能不取),取走最后一个石子的人获胜。对于这个问题,我们可以将每堆钱看做一堆石子,那么问题就转化为了Nim游戏。如果所有堆的钱数异或和为0,则小明必败,否则小明必胜。根据Nim游戏的定理,如果所有堆的石子数量的异或和为0,则先手必败,否则先手必胜。这个定理可以通过数学归纳法证明。这是一个经典的博弈论问题,可以使用Nim游戏的思想来解决。

2025-04-07 19:03:17 213

原创 算法-快速幂

【代码】算法-快速幂。

2025-04-07 18:39:24 97

原创 01背包问题

【代码】01背包问题。

2025-04-04 22:20:31 75

原创 Floyd算法

【代码】Floyd算法。

2025-04-04 22:16:27 110

原创 算法--最长上升子序列

【代码】算法--最长上升子序列。

2025-04-04 20:08:44 202

原创 算法-传送门问题

【代码】算法-传送门问题。

2025-03-11 14:38:59 240

原创 地图-迷宫问题

【代码】算法c++

2025-03-10 09:09:35 171

原创 pytorch基础

help()函数查询Dataset的作用。

2025-02-21 22:19:58 201

原创 可视化-最小二乘法拟合直线

做出i-T图像,利用最小二乘法拟合直线。

2024-10-08 21:43:50 453

原创 数据结构-栈

判断输入的表达式中括号是否匹配(只含左右括号)2)栈顶指针指向当前位置的元素。判断一个字符串是否为对称串。1)先进后出,后进先出。不存在栈满上溢出的情况。

2024-10-06 20:03:23 382

原创 Timeline: 时间线轮播多图

对全国2014-2023年各省市的人口,做出动态柱状图/时间线轮播多图,即每隔一定时间间隔,自动的切换2014、2015、....2023各省市的人口(即2014-2023年全国省市人口排名前12的情况)

2024-10-05 17:18:48 384

原创 Map: 地图

对全国2023年各省市的人口分布情况,做出地图展示效果。

2024-10-05 11:36:53 693

原创 Line: 折线图

对北京市、天津市、上海市、重庆市的近10年人口,做出折线图,效果。

2024-10-04 20:12:56 378

原创 Pie-饼图

【代码】Pie-饼图。

2024-10-02 20:52:30 364

原创 pyecharts-快速入门

【代码】pyecharts-快速入门。

2024-10-02 20:10:46 316

原创 C++减少输入输出时间

C++减少输入输出时间。

2024-09-28 20:14:45 185

原创 数据结构-顺序表的应用

1、有一个顺序表L,假设元素类型ElemType为整型,设计一个尽可能高效的算法,以第一个元素为分界线(基准),将所有小于或等于它的元素移到该基准的前面,将所有大于它的元素移动到该基准的后面。以第一个元素为基准,从右向左找一个小于或等于基准的元素x,从左向右找一个大于基准的元素y,将两者交换,直到全部找完。2、有一个顺序表L,假设元素类型ElemType为整型,设计一个尽可能高效的算法,将所有奇数移到偶数的前面。

2024-09-17 16:33:03 448

原创 数据结构-顺序表

假设一个线性表采用顺序表表示,设计一个算法,删除其中所有值等于x的元素,要求算法的时间复杂度为O(n),空间复杂度为O(1)9、插入数据元素(在第i个位置插入元素e)--ListInsert(& L, i, ElemType e)8、查找第一个值为e的元素的逻辑序号(即元素下标+1)--LocateElem( L, e)10、删除元素(在第i个位置的元素e)--ListDelete(& L, i, & e)7、获取L中的第i个元素的值--GetElem(L,i,&e)

2024-09-16 20:45:40 839

原创 文件的应用实例

说明:将一张图片/一首歌拷贝到另外一个目录下,要求使用read()和write()原生方法完成。

2024-09-15 15:48:09 264

原创 对目录的操作、获取文件信息

4)关于目录分隔符号,在windows下 "/ " 和 "//" 都可以,比如如"d://aaa//bbb//hi.txt"和"d:/aaa/bbb/hi.txt",linux/unix是"/",比如 /root/home/aa.log 因此建议目录分隔符,为了兼容,linux和windows都使用"/"2)f.close():刷新并关闭此流,也就是f.close()内置的flush功能。3)删除目录 d://aaa和d://bbb//ccc。2)创建多级目录 d://bbb//ccc。

2024-09-15 10:54:27 522

原创 文件的常用操作

1)在d盘的a目录下创建abc.txt文件,并写入10句"hello,python"到文件。# 需求:读取在d盘的a目录下的hello.txt文件,hello.txt已经存在。3)在abc.txt原有内容基础上追加10句,"你好!2)在abc.txt内容覆盖成新的内容10句,"hi,c++"需求:在d盘的a目录下创建hi.txt文件,a目录已经创建好。1)判断在d盘的a目录下是否有hi.txt文件,如果有则删除。2)如果没有,则提示"文件不存在"hello.txt文件。

2024-09-14 20:28:26 388

原创 最佳实践-模板设计模式

1)设计模式是在大量的实践中总结和理论化之后优选的代码结构、编程风格、以及解决问题的思考方式2)设计模式就像经典的棋谱,不同的棋局,我们用不同的棋谱,免去我们再思考和摸索1、基本介绍抽象类体现的就是一种模板模式的设计,抽象类作为多个子类的通用模板,子类在抽象类的基础上进行扩展、改造,但子类总体上会保留抽象类的行为方式2、模板设计模式能解决的问题1)当功能内部一部分实现是确定的,一部分是不确定的,这时可以把不确定的部分暴露出去,让子类去实现。

2024-09-08 14:57:17 756

原创 抽象类介绍

1、默认情况下,Python不提供抽象类,Python附带一个模块,该模块为定义抽象基类提供了基础,该模块名称为abc2、当我们需要抽象基类时,让类继承ABC(abc模块的ABC类),使用@abstractmethod声明抽象方法(@abstractmethod用于声明抽象方法的装饰器,在abc模块中),那么这个类就是抽象类3、抽象类的价值更多作用是在于设计,是设计者设计好后,让子类继承并实现抽象类的抽象方法。

2024-09-08 14:11:49 387

原创 Class对象和静态方法

9. 类 — Python 3.12.5 文档2)类本身也是对象,即:Class对象内置函数 — Python 3.12.5 文档2)@staticmethod将方法转换为静态方法3)静态方法不会接收隐式的第一个参数4)要声明一个静态方法,语法:class C:........5)静态方法既可以由类调用(如 C.f()),也可以由实例调用(如 C().f())

2024-09-08 11:08:39 354

原创 魔术方法介绍

1)在Python中,所有以双下划线__包起来的方法,统称为Magic Method(魔术方法),它是一种特殊的方法,普通方法需要调用,而魔术方法不需要调用就可以自动执行2)魔术方法在类或对象的某些事件发生时会自动执行,让类具有神奇的“魔力”。如果希望根据自己的程序定制特殊功能的类,那么就需要对这些方法进行重写3)Python中常用的运算符、for循环、以及类操作等都是运行在魔术方法之上的1)打印对象默认返回:类型名+对象内存地址,子类往往重写__str__,用于返回对象的属性信息。

2024-09-08 10:28:21 491

原创 面向对象编程-多态

1)多态顾名思义即多种状态,不同的对象调用相同的方法,表现出不同的状态,称为多态2)多态通常作用在继承关系上说明:一个父类,具有多个子类,不同的子类对象调用相同的方法,执行的时候产生不同的状态,就是多态。

2024-08-16 11:27:10 375

原创 面向对象编程-多态的引入

1)问题是:代码的复用性不高,而且不利于代码维护和功能扩展。问题分析:如果动物/食物的种类很多,怎么办?传统的方法带来的问题是什么?2)解决方案:引出->多态。

2024-08-15 20:48:02 243

原创 类型注解-type hint

1)随着项目越来越大,代码也就会越来越多,在这种情况下,如果没有类型注解,很容易不记得某个方法的参数类型是什么2)一旦传入了错误类型的参数,Python是解释性语言,只有在运行时才能发现问题,这对大型项目来说是一个巨大的灾难# 对字符串进行遍历# a:str 给形参a进行类型注解,标注a的类型是strprint(ele)# ctrl+p提示参数时,没有类型提示# 如果类型传错了,就会出现异常1)Union类型可以定义联合类型注解2)在变量、函数(方法)都可以使用Union联合类型注解。

2024-08-15 20:08:01 883

原创 重写的介绍

重写又称为覆盖(override),即子类继承父类的属性和方法后,根据业务需求,再重新定义同名的属性或方法。

2024-08-15 15:55:35 182

原创 调用父类成员

如果子类和父类出现同名的成员,可以通过父类名、super()访问父类的成员。

2024-08-15 15:08:32 291

原创 面向对象编程-继承

1)继承可以解决代码复用,让我们的编程更加靠近人类的思维2)当多个类存在相同的属性和方法时,可以从这些类中抽象出父类,在父类中定义这些相同的属性和方法,所有子类不需要重新定义这些属性和方法。

2024-08-14 17:35:11 628

原创 面向对象编程-封装

1)封装就是把抽象出的数据[属性]和对数据的操作[方法]封装在一起,数据被保护在内部2)程序只有通过被授权的操作,才能对数据进行访问。

2024-08-14 14:25:50 321

原创 构造方法/构造器

构造方法(构造器)基本语法:def __init__(self,参数列表):代码...

2024-08-11 16:18:06 311

原创 作用域(全局变量、局部变量)

5、属性和局部变量可以重名,访问时带上self,表示访问的是属性,没带self,则是访问局部变量。3、作用域的分类:属性作用域为整个类,比如Cat类:cry eat 等方法使用属性。1、在面向对象编程中,主要的变量是成员变量(属性)和局部变量。4、局部变量:也就是方法中定义的变量,作用域是在它的方法中。2、我们说的局部变量,一般是指成员方法中定义的变量。

2024-08-10 17:55:02 190

原创 对象作为参数传递

1)这里我们讨论的对象,是通过我们自定义的类,创建的对象,比如Cat类->cat对象,Person类->person对象。2)看一个案例,分析输出结果。

2024-08-10 17:32:14 247

原创 self的使用

def 方法名(self,形参列表):方法体。

2024-08-10 15:38:12 346

空空如也

空空如也

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

TA关注的人

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