- 博客(8)
- 收藏
- 关注
原创 Numpy的基本操作(笔记)
这里记一下我看视频时所学到的东西作为一个笔记主要是为了学机器学习而做的基础准备,有错误的地方还大家请指出Numpy导入import numpy as npprint(np.__version__) # 查看版本数组的创建和属性创建lst = [1, 2, 3]arr = np.array(lst) # 通过传入列表创建一个np数组arr = np.zeros(shape=(5, 2), dtype=int)# 创建一个大小为5 X 2的int类型的0数组arr = np.ones(s
2020-06-30 23:37:11 87
原创 [kuangbin带你飞]专题二 搜索进阶
A - Eight康托展开 + bfs题意:给你一个图形,由1,2,3…8和x构成,其中x可以与上下左右的方块相互交换位置,给出的一个图形,求把它通过最少的交换操作从而摆回指定位置的做法。思路:首先这道题有多组数据,如果每次都用bfs进行搜索绝对会爆时间。但是由于最终的状态相同,所以可以尝试倒着搜索,这样就只需要bfs一次。由于每次的状态都是一个矩阵所以不好标记。那么就需要对这些矩阵进行映射,把x设为0,那么矩阵就是由0-8这九个数字构成的排列。所以可以用康托展开来计算。代码#include
2020-06-30 09:49:46 643
原创 容斥原理(笔记)
对于三个圆, S1,S2,S3他们如上图所示,现在要求求他们所构成图形的面积,该如何去求?这个问题很简单,S=S1+S2+S3−(S1∩S2)−(S1∩S3)−(S2∩S3)+(S1∩S2∩S3)S = S_1 + S_2 + S_3 - (S_1\cap S_2) - (S_1 \cap S_3) - (S_2 \cap S_3) + (S_1 \cap S_2 \cap S_3)S=S1+S2+S3−(S1∩S2)−(S1∩S3)−(S2∩S3)+(S1∩S2∩S3)如果换.
2020-06-30 08:26:00 288
原创 康托展开&逆康托展开
用途康托展开是一种双射,用于排列和整数之间的映射,可用于排列的哈希康托展开公式:∑i=n1pi∗(i−1)!\sum\limits_{i = n}^{1} p_i*(i - 1)!i=n∑1pi∗(i−1)! 其中pip_ipi为第iii个数构成的逆序的个数,n为排列数的个数例:排列:2134∑i=n1pi∗(i−1)!\sum\limits_{i = n}^{1} p_i*(i - 1)!i=n∑1pi∗(i−1)! = 3! * 1 + 2! * 0 + 1! * 0 + 0!
2020-06-20 17:58:27 189
原创 求组合数
基本公式:Cnm=AnmAmm,Cnm=n!m!(n−m)!C_n^m = \frac{A_n^m}{A_m^m}, C_n^m = \frac{n!}{m!(n - m)!}Cnm=AmmAnm,Cnm=m!(n−m)!n!定义法:利用Cnm=n!m!(n−m)!C_n^m = \frac{n!}{m!(n - m)!}Cnm=m!(n−m)!n!来求,通常用于多次求在某一模下的组合数设inv[x]为x!的逆元则Cnm=n!m!(n−m)!=n!∗inv[n!]∗inv[(n−
2020-06-17 21:11:14 181
原创 kunagbin专题一(简单搜索)
文章目录A - 棋盘问题:B - Dungeon MasterC - Catch That CowD - FliptileE - Find The MultipleF - Prime PathG - Shuffle'm UpH - PotsI - Fire GameJ - Fire!K - 迷宫问题L - Oil DepositsM - 非常可乐N - Find a wayA - 棋盘问题:思路:直接dfs搜索,每次放一个棋子时都把所在的行和列给标记了#include<iostream>
2020-06-17 16:13:29 428
原创 高斯消元
高斯消元解方程属于线代里知识,这里只记录一下程序中的步骤过程:解决n个方程n个变量的方程用a[i][j]a[i][j]a[i][j]代表第iii行第jjj个元素,即a为增广矩阵定义行r = 1,列c = 1并枚举c从1到n同时从上到下枚举行,找到当前列下绝对值最大的一行t交换t和r行的所有元素将把r行整体除以a[r][c]a[r][c]a[r][c]把r行以下的第c列元素都消成0倒着再消一遍所有的元素int gauss(){ int r = 1;//行 for(int
2020-06-03 16:12:59 113
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人