自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(75)
  • 资源 (6)
  • 收藏
  • 关注

原创 59. 螺旋矩阵 II Spiral Matrix II(Python3)

1. 题目给你一个正整数 n ,生成一个包含 1 到 n2 所有元素,且元素按顺时针顺序螺旋排列的 n x n 正方形矩阵 matrix 。示例 1:输入:n = 3输出:[[1,2,3],[8,9,4],[7,6,5]]示例 2:输入:n = 1输出:[[1]]2. 解题思路与官方的答案不太一样,我还是用的昨天的递归的思路,就是一圈一圈地考虑这个矩阵地元素,一直向内递归,用递归非常需要注意的就是递归的终止条件from typing import Listclass Solu

2021-03-16 22:37:11 209

原创 54. 螺旋矩阵 Spiral Matrix (Python3)

1. 题目给你一个 m 行 n 列的矩阵 matrix ,请按照 顺时针螺旋顺序 ,返回矩阵中的所有元素。示例 1:输入:matrix = [[1,2,3],[4,5,6],[7,8,9]]输出:[1,2,3,6,9,8,7,4,5]示例 2:输入:matrix = [[1,2,3,4],[5,6,7,8],[9,10,11,12]]输出:[1,2,3,4,8,12,11,10,9,5,6,7]提示:m == matrix.lengthn == matrix[i].length

2021-03-15 21:00:16 253

原创 706. Design HashMap

'''今天的题目是设计一个哈希表'''class MyHashMap: def __init__(self): """ Initialize your data structure here. """ self.hash_buckets = 1001 self.hash_table = [[] for _ in range(1001)] def hash(self, key):

2021-03-14 22:08:22 121

原创 705. 设计哈希集合 Design HashSet

'''题目要求设计的一个哈希集合'''class MyHashSet: def __init__(self): """ Initialize your data structure here. """ self.buckets = 1001 # 这里用了最简单的求哈希值的方法 # 就是用一个数对一个质数取模,这个质数设置为1001 self.a_list = [[] for _ i

2021-03-13 22:45:49 134

原创 Python实现树结构的两种方式

实现树结构的经典方法是:嵌套列表法这里把我踩的坑记录一下'''使用嵌套列表法实现树的基本功能'''def BinaryTree(r): return [r, [], []]def insertLeft(root, newBranch): t = root.pop(1) if len(t) > 1: # 如果左子树非空,就把原来根节点上的左子树作为新的根的左节点的左子树 root.insert(1, [newBranch, t, [

2021-03-12 19:20:41 7023

原创 LeetCode算法题:基本计算器 Basic Calculator II

题目:Given a string s which represents an expression, evaluate this expression and return its value.The integer division should truncate toward zero.Example 1:Input: s = “3+2*2”Output: 7class Solution: def calculate(self, s: str) -> int:

2021-03-11 21:20:40 207

原创 LeetCode算法题:基本计算器 Basic Calculator

题目描述:Given a string s representing an expression, implement a basic calculator to evaluate it.Example 1:Input: s = “1 + 1”Output: 2Example 2:Input: s = " 2-1 + 2 "Output: 3Example 3:Input: s = “(1+(4+5+2)-3)+(6+8)”Output: 23Constraints:1 <=

2021-03-10 16:56:49 257

原创 keras搭建RNN循环神经网络模板

# -*- coding: utf-8 -*-"""Created on Wed Nov 25 16:25:24 2020@author: Chauncy"""import kerasfrom keras.datasets import mnistfrom keras import layersfrom keras.optimizers import Adam from keras.utils.vis_utils import plot_modelfrom keras.utils i

2020-11-25 17:08:09 1125

原创 keras搭建CNN卷积神经网络模板

import kerasfrom keras.datasets import mnistfrom keras import layersfrom keras.utils import np_utilsfrom keras.optimizers import Adamfrom keras.model import load_model# 画出模型的结构from keras.utils.vis_utils import plot_model# 载入数据(x_train, y_train),

2020-11-25 17:07:12 898

原创 使用tensorflow中的keras中的sequential创建神经网络

参数的设定model = tf.keras.Sequential()model.add(tf.keras.layers.Dense(8, input_shape=(16,)))# 模型的第一层可以接收一个表示输入形状的参数model.add(tf.keras.layers.Dense(4))表示输入形状的参数只用在第一层写入即可,以后的层会自动判断。当然也可以不指定输入的形状,这种情况下模型不会有任何权重直到第一次调用这个模型,这种建造模型的方式也被称为延迟建造模式(delayed-build

2020-10-28 14:57:11 1668

原创 python使用numpy模块报错ValueError: could not convert string to float:

python使用numpy模块报错ValueError: could not convert string to float报这个错误,一般首先要检查文件中的元素是否有字符串型,如果这还不行的话,就是numpy数组无法自动识别你的文件分隔符应该把读取文件的代码写为:data2 = np.loadtxt('real.csv', delimiter=',', skiprows = 1)...

2020-10-27 19:57:02 8108 5

原创 时间序列分解论文STL: A Seasonal-Trend Decomposition Procedure Based on Loess

摘要  STL是一种滤波方式可以把时间序列分解为趋势项、季节项和剩余项。STL包含一系列局部加权回归平滑器,计算速度比较快,可以应对非常大的的时间序列数据。1 引言  STL是一个可以把一个季节性时间序列分解为三项:趋势项、季节性和剩余项。  下图是原始序列:  下图是趋势项:数据中非平稳的长期变化的低频变量  下图是季节项:  下图是剩余项:  分别用Yv,Tv,SvY_v,T_v,S_vYv​,Tv​,Sv​和SvS_vSv​表示时间序列数据、趋势项、季节项和剩余项,所以有:Yv

2020-10-23 20:34:07 9887 3

原创 时间序列聚类算法论文《k-Shape: Efficient and Accurate Clustering of Time Series》

ABSTRACT  聚类是最流行的数据挖掘方法之一。这不仅仅是因为聚类问题具有很强的探索性,还因为它可以作为其他技术的预处理步骤或子过程。本文提出一种的新的时间序列聚类算法——K-shape算法。该算法依赖于一个可度量的迭代优化过程,创建同构的、分割良好的群簇。K-shape聚类算法依赖使用了规范化之后的互相关系数作为距离的度量,在每次迭代中使用它来更新聚类对聚类时间序列的分配。1. INTRODUCTION  聚类是应用非常广泛的一项技术,因为它不需要监督和数据标注。  大多数时间序列分析技术,包

2020-09-09 11:13:37 5169 3

原创 ARIMA模型中PACF的系数大于1以及图为一条横线的问题

转自:https://blog.youkuaiyun.com/summerliuqing/article/details/103471983本文主要解决ARIMA模型中的两个问题,一个是绘制PACF图时,出现偏自相关系数大于1的情况;一个是绘制绘制PACF图时,显示的是横线1.利用python绘制arima的自相关系数以及偏自相关系数图一直出现系数大于1 的情况:plot_pacf(ts,ax=ax2,lags=lags)添加method=‘ywm’语句plot_pacf(ts,ax=ax2,lags=la

2020-08-30 20:13:15 2076 1

原创 Python实现最简单的神经网络——详细注释

import numpy as npimport matplotlib.pyplot as pltimport scipy.special as ss%matplotlib inlineclass NN: ## 初始化神经网络 def __init__(self,inputnodes,hiddennodes,outputnodes,learningrates): ## 设置输入层、隐藏层、输出层的层数 self.inodes = inputnodes

2020-08-09 21:06:45 1285

原创 Anaconda Error - module ‘brotli‘ has no attribute ‘error‘

第一种解决方法:conda install brotli第二种解决方法:pip install brotli

2020-07-29 21:29:24 8755 4

原创 Latex数学公式冷门技巧

直接插入代码\begin{equation}\begin{aligned}......\end{aligned}\end{equation} 在需要换行的地方输入\在需要对齐的地方&

2020-07-25 10:35:02 371

原创 入门级理解插值方法

文章目录插值方法1 Hermite插值1.1 Hermite插值的定义1.2 Hermite插值的求法2 三次样条插值2.1 三次样条插值的定义2.2 边界条件2.3 三次样条函数的求法2.3.1 三转角方法2.3.2 三弯矩算法插值方法1 Hermite插值1.1 Hermite插值的定义设在节点a≤x0<x1<...<xn≤b(i=1,2,...,n)a\leq x_0<x_1<...<x_n\leq b(i=1,2,...,n)a≤x0​<x1​&lt

2020-07-24 10:03:39 1899

原创 ARIMA模型的基础知识

文章目录ARIMA模型的前提条件平稳性:自回归模型(AR)移动平均模型(MA)自回归移动平均模型(ARIMA)ARIMA(p,d,q)模型自相关函数ACF(autocorrelation function)偏自相关函数PCAF(partial autocorrelation function)ARIMA(p,d,q)阶数的确定ARIMA建模流程:模型参数选择AIC与BIC:选择更简单的模型模型残差检验ARIMA模型的前提条件平稳性:  样本的时间序列所得到的拟合曲线在未来的一段时间内仍能顺着现有的形态

2020-07-17 15:16:24 11983 1

原创 使用Python进行数据处理的几个基础工具

文章目录数据处理Matplotlibfigure创建画布划分子图subplot设置字体标题调整子图tight_layout()散点图scatter添加文字说明text()字体为中文时可能影响坐标负号的显示,plt.rcParams["axes.unicode_minus"]=False坐标轴的调整图例折线图plot柱图barKeras加载数据集load_data()方法调整训练集和测试集比例下载数据集utils.get色彩映射plt.scatter(x,y,c,cmap)Pandas库读取csv数据集文件p

2020-07-16 22:21:07 556

原创 Tensorflow2.0的报错FutureWarning: Passing (type, 1) or ‘1type‘ as a synonym of type is deprecated;

在安装Tensorflow之前,需要安装:numpy, matplotlib, Pillow, scikit-learn, pandas.使用的pip安装命令全部安装以后,在导入Tensorflow时出错,>>> import tensorflowC:\Users\Chauncy\.conda\envs\Tensorflow20\lib\site-packages\tensorflow\python\framework\dtypes.py:516: FutureWarning: Pa

2020-07-14 15:55:06 466

原创 两种不用的思想实现二分查找算法Python实现

文章目录利用指针的思想实现二分查找算法利用递归的思想实现二分查找算法利用指针的思想实现二分查找算法def binarySearch(alist, item): first = 0 last = len(alist) - 1 found = False while first <= last and not found: midpoint = (first + last)//2 if alist[midpoint] == item:

2020-07-12 10:34:33 128

原创 Python实现背包问题的两种解决方法

动态规划方法解决背包问题# 物品重量与价值tr = [None, {'w': 2, 'v': 3}, {'w': 3, 'v': 4}, {'w': 4, 'v': 8}, {'w': 5, 'v': 8}, {'w': 9, 'v': 10}]# 最大容量max_w = 20# 初始化二维表格# 集合的形式作为二维表格m = {(i, w): 0 for i in range(len(tr)) for w in range(max_w + 1)}for i in ra

2020-07-10 17:03:24 2600

原创 动态规划找零钱的Python代码实现

文章目录问题描述找零钱问题问题描述找零钱问题给出任意一个正整数作为金额,找出在给定硬币面值的情况下需要的最少硬币数。def dpMakeChange(coinValueList,change,minCoins): #从一分开始到change逐个计算最少硬币数 for cents in range(1,change+1):# 前闭后开区间 # 1.初始化一个最大值 coinCount = cents # 2.减去每个硬币,向后查最少硬币数

2020-07-10 16:53:28 1370

原创 Python实现基本数据类型——栈、队列、双端队列、列表

文章目录1. 栈1.1 ADT Stack的Python实现1.2 栈的应用1. 栈1.1 ADT Stack的Python实现class Stack: def __init__(self): self.items = [] def isEmpty(self): return self.items == [] def push(self, item): return self.items.append(item)

2020-07-09 11:55:56 879

原创 简单易懂的Python链表基础知识源代码版

# 在单向链表中,每一个节点都是一个对象# 节点类class LNode: def __init__(self, elem, next_=None): self.elem = elem self.next = next_list1 = LNode(1)p = list1for i in range(2, 11): p.next = LNode(i) p = p.nextp = list1while p is not None:

2020-06-05 19:01:10 309 1

原创 遗传算法求解图的最小生成树

1、最小生成树  用n-2位自然数唯一地表达出一颗n个节点的生成树,而且交叉变异仍是一棵生成树。有三个约束:该树覆盖所有的顶点概树是连通的该树是一棵树,既没有回路2、编码(prufer数编码)1、设节点i是标号最小的叶子2、若i 与j 相连,令j 是编码中的第一个数字,删去边(i, j)3、转步骤1,直到剩下一条边为止3、解码1、令Prufer数中的节点集为P...

2020-06-05 16:17:16 1861

原创 超级详细的Python面向对象的基础知识(附简单的例子带有Python源代码)

1 面向对象的基本概念1.1 对象和类  对象既能表示结构化的数据,也能表示抽象的事件。  类是具有相同属性和操作行为的一组对象的集合。类和对象的关系是抽象和具体的关系,类的作用是定义对象,类给出了属于该类的全部对象的抽象定义,而对象是类的具体化,是符合这种定义的一个类的实例。  总的来说,类是对对象的抽象,对象是类的具体实例。1.2 封装  封装是针对对象来说的,指将对象的属性和行为(数据和操作)包裹起来形成一个封装体。该封装体内包含对象的属性和行为,对象的属性由若干个数据组成,而对象的行为则

2020-06-03 17:44:59 324

原创 求最短路的Dijkstra算法matlab源代码

直接给出代码function [cost,path]=Dijkstra(graph,sou,des)% 无向图的最短路径算法%获得城市的个数[~,num_city]=size(graph);%路径向量用于存放最优路径path_g=zeros(1,num_city);path_g(1,:)=graph(sou,:);min_index=sou;min_value=0;path(1,1)=min_index;count=2;all_min_index(1,1)=min_index;a

2020-05-29 15:04:00 1070

原创 使用经典的BP网络逼近非线性函数matlab代码

本代码注释非常详细,适合初学者,另外,算法的思想在这里:BP网络的基本思想% Chauncy% Date:2020年4月30日close all;clear;clc;%% 初始化输入输出Num_X=1001;X=zeros(Num_X,1);j=1;for i=-5:0.01:5 X(j)=i; j=j+1;endY=zeros(Num_X,1);%每一次理...

2020-04-30 22:38:23 2344

原创 BP网络算法的基本思想及算法流程

网络的构成神经元的网络输入:neti=x1w1i+x2w2i+...+xnwninet_i=x_1w_{1i}+x_2w_{2i}+...+x_nw_{ni}neti​=x1​w1i​+x2​w2i​+...+xn​wni​神经元的输出:o=f(net)=11+e−neto=f(net)=\frac{1}{1+e^{-net}}o=f(net)=1+e−net1​f′(net)=−11+...

2020-04-27 10:03:49 6663

原创 小白对最小二乘估计、最大似然估计和最大后验估计的理解

这三者的联系非常紧密最小二乘估计(LLS)首先假设直线为y=ax+by=ax+by=ax+b我们的目标函数就可以设为χ2=Σin(yi−y(xi))2\chi^2=\Sigma_i^n(y_i-y(x_i))^2χ2=Σin​(yi​−y(xi​))2最小二乘估计比较简单易懂,只需把数据代入这个公式,然后求导等于零,就可以算出a和b的值。**改进的最小二乘估计方法(MLS):**引入数据的权...

2020-04-25 23:55:46 496

原创 粒子群优化算法(PSO)的基本思想和算法步骤

基本公式每一代中的粒子i,其速度Vi={Vi1,Vi2,...,Vid,...,ViD}V_i=\{V_{i1},V_{i2},...,V_{id},...,V_{iD}\}Vi​={Vi1​,Vi2​,...,Vid​,...,ViD​}Vidk+1=ωVidk+c1ξ1(Pid−Xid)+c2ξ2(Pgd−Xid)V_{id}^{k+1}=\omega V_{id}^k+c_1\xi_1(...

2020-04-13 23:30:12 5292

原创 蚁群算法(ACO)求解01背包问题matlab源代码

关于蚁群算法的基本思想和总结可以点击看这篇文章直接上源代码:clc;clear;close all;%% 参数初始化Thing=[95 55;4 10;60 47;32 5;23 4;72 50;80 8;62 61;65 85;46 87];%Thing矩阵,第一列为物品的重量,第二列为物品的价值Num_gen=100;%最大迭代次数Num_pop=10;%种群大小Alpha...

2020-04-13 22:33:45 2806

原创 蚁群优化算法(AS)的基本原理与算法流程总结

AS用来解决TSP问题的基本计算公式n个城市的TSP,城市间的距离为dijd_{ij}dij​选择概率公式:若j∈Aj\in Aj∈A则Pijk(t)τij(t)dηijβ∑l∈Ak[τij]αηilβP_{ij}^k (t)\frac{\tau_{i j}(t)^{d} \eta_{i j}^{\beta}}{\sum_{l \in A_{k}}\left[\tau_{i j}\right...

2020-04-12 11:47:52 3221

原创 用经典的模拟退火算法求解30城市小规模的TSP问题

模拟退火算法编码比较简单,而且容易调试,所以应用比较广泛。算法的思想可以参考这篇:模拟退火算法的基本思想和算法流程直接给出源代码:主程序:clear all;close all;clc;%% 参数设置t_0 = 1e100; %初始温度t_f = 1e-90; %终止温度num_gen = 100;num_swap=2;num_city = 48;[l...

2020-04-12 09:31:37 4010

原创 Latex小白入门

如何使用中文通过引入CJK红包并应用CJK环境即可\usepackage{CJK}\begin{CJK}{UTF8}{song} …\end{CJK}直接使用ctexart模板\documentclass[UTF8]{ctexart}使用ctex宏包\usepackage{ctex}格式控制\begin{xxx}…\end{xxx}表示一个段落,xxx填doc...

2020-04-11 00:59:57 508

原创 用Python绘制词云

绘制词云的基本思路1、读取文件2、设置并输出3、观察结果,优化迭代直接给出源代码import jiebaimport wordcloudf = open("date2.txt",'r',encoding="utf-8")t = f.read()f.close()ls = jieba.lcut(t)txt = " ".join(ls)w = wordcloud.WordC...

2020-04-05 18:44:05 725

原创 Python文件的基础操作总结

文件是数据存储的一种形式文件的展现状态:文本文件和二进制文件文本文件:由单一特定编码组成的文件,如UTF-8编码文本文件由于存在编码,也被看成存储着的长字符串适用于例如:.txt文件、.py文件二进制文件:直接由比特0和1组成,没有统一字符编码一般存在二进制0和1的组织结构,即文件格式适用于例如:.png文件、.avi文件等1、文件的打开格式:<变量名&gt...

2020-04-04 18:53:14 268

原创 用Python进行词频统计

英文文本词频统计def getText(): txt = open("hamlet.txt","r").read()#读取文件 txt = txt.lower() #把文本全部变为小写 for ch in '|"#$%&^()*+,-./:;<>=?@[]\\_‘{}~':#把特殊字符变为空格 txt = txt.replace(ch,...

2020-04-04 00:15:35 4220

Dijkstra.zip

该代码实现了Dijkstra算法,编程语言是matlab,该代码易于使用,只需关注该代码的输入和输出即可很快上手使用。

2020-05-29

MLE_MAP_Part1.pdf

这个PDF文本详细介绍了最大似然概率与最大后验概率的联系与区别,适合基础较薄弱的人学习。

2020-04-24

SA_TSP30.zip

这是利用经典的模拟退火算法求解30个城市的TSP问题,代码使用matlab写的,改代码可扩展性强,易用

2020-04-12

GA_myself.zip

该代码是用matlab实现的遗传算法的完整源代码,目标函数是二元函数,用户只要稍微修改几个参数即可使用。

2020-03-05

Scheme_of_Matlab.zip

matlab的默认主题时白色的,看的时间长了眼睛容易受伤,自定义主题为黑色的,可以提高工作效率。这个压缩包它提供了集中比较常用的黑色主题。

2020-03-03

遗传算法matlab代码.zip

这是一个用matlab实现的完整的遗传算法的代码,目标函数为二元函数,目标是求最小值。用户只需稍微调整参数即可使用。

2020-03-02

空空如也

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

TA关注的人

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