自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 LU分解_SVD分解

张量(Tensor),是Tensorflow里常用的一个数据结构张量有很严谨的定义,可暂且把它简单理解为一个多维空间,一维张量就是向量,二维就是矩阵,三维直接就叫三维张量,Tensorflow就是围绕张量运算的一个库。——助教老师LU初识LUTensorflow的线性代数函数tf.linalg.ludata = tf.constant([2, 1, 8, 7], dtype=tf.float32, shape=[2,2])tf.linalg.lu(data)outputLu(lu=&l

2022-03-30 17:27:41 2254

原创 Node: ‘conv2d_transpose_1/conv2d_transpose/Conv2DBackpropFilter‘No algorithm worked Error messages

NotFoundError: Graph execution error: Detected at node 'conv2d_transpose_1/conv2d_transpose/Conv2DBackpropFilter'Node: 'conv2d_transpose_1/conv2d_transpose/Conv2DBackpropFilter'No algorithm worked! Error messages:Profiling failure on CUDNN engine 1

2022-03-27 17:58:28 4403 1

原创 远程仓库配置SSH

SSH公钥可用于在电脑和 Git 通讯的时候使用安全连接1、在本地C盘下的.ssh文件夹下,生成公钥id_rsa文件C:\Users\Administrator>cd .sshssh-keygen -t rsa -C "[email protected]"2、id_rsa.pub里的文本就是SSH公钥,可分别打开github、gitee、gitlab等远程仓库网站,在设置里添加此SSH公钥,一个公钥可代表一个邮箱用户的身份...

2022-01-25 01:19:22 813

原创 Git初始化

1、下载git,安装一路nextGit - Downloads (git-scm.com)2、配置环境变量D:\Program Files\Git\binD:\Program Files\Git\mingw64\libexec\git-core3、登录github,添加仓库repository,生成git链接4、打开命令行,配置git账号git config --global user.name "polar_bear"git config --global user.e

2022-01-24 17:52:33 5266

原创 【C++】最长递增子序列

https://leetcode-cn.com/problems/longest-increasing-subsequence/class Solution {public: int lengthOfLIS(vector<int>& nums) { int len = 1, n = nums.size(); if (n == 0) return 0; vector<int> d(n, 0);//d[i]是长度为i

2021-08-10 01:42:20 1411

原创 【力扣】动规习题

1959. K 次调整数组大小浪费的最小总空间https://leetcode-cn.com/problems/minimum-total-space-wasted-with-k-resizing-operations/

2021-08-10 01:30:15 112

原创 【C++】环形数组(图是否有环)

https://leetcode-cn.com/problems/circular-array-loop/存在一个不含 0 的 环形 数组nums ,每个 nums[i] 都表示位于下标 i 的角色应该向前或向后移动的下标个数:如果 nums[i] 是正数,向前 移动 nums[i] 步如果nums[i] 是负数,向后 移动 nums[i] 步因为数组是 环形 的,所以可以假设从最后一个元素向前移动一步会到达第一个元素,而第一个元素向后移动一步会到达最后一个元...

2021-08-10 00:06:40 706

原创 【C++】环形链表

用快慢指针判断是否存在环https://leetcode-cn.com/problems/linked-list-cycle///结点定义struct ListNode { int val; ListNode *next; ListNode(int x) : val(x), next(NULL) {}};bool hasCycle(ListNode *head) { if (head == nullptr || head->next == n

2021-08-09 23:27:55 265

原创 【C++】访问无向连通图的最短路径

https://leetcode-cn.com/problems/shortest-path-visiting-all-nodes/存在一个由 n 个节点组成的无向连通图,图中的节点按从 0 到 n - 1 编号。给你一个数组 graph 表示这个图。其中,graph[i] 是一个列表,由所有与节点 i 直接相连的节点组成。返回能够访问所有节点的最短路径的长度。你可以在任一节点开始和停止,也可以多次重访节点,并且可以重用边。示例 1:输入:graph = [[1,2,3],[0].

2021-08-09 14:22:26 1742

原创 【C++】Floyd算法求所有点对之间的最短路径(弗洛伊德、插点法)

思想:动态规划。图中共有n个顶点,定义一个n阶方阵矩阵序列,其中,arcs为带权有向图的邻接矩阵;根据以下转移方程迭代其中是从顶点 i 到 j、中间顶点的序号不大于k的最短路径的长度。每迭代一次,从 i 到 j 的最短路径上就多考虑一个顶点;n次迭代后,得到任意一对顶点之间的最短路径。时间复杂度允许图中有带负权值的边,不允许有包含负权值边的回路。//graph为无向连通图的邻接表(不带权)void shortestPathLength(vector<vector<int>&g

2021-08-09 14:02:40 337

原创 【C++】set

#include <set>int main(){ set<int> test; test.insert(1); bool contain = false; if (end.find(1) != end.end()){ contain = true; }}https://en.cppreference.com/w/cpp/container/set

2021-08-06 01:28:02 59

原创 【C++】拓扑排序

定义:一个有向无环图的顶点组成的序列(可遍历图所有顶点的一条单向链表),需满足两个条件:(1)该序列中包含图的每个顶点,且只出现一次;(2)若排序中A在B的前面,则图中不存在B到A的路径;步骤:(1)从图中找一个入度为0的顶点A,加到路径(2)从图中删除顶点A和A的出边(以A为起点的有向边)(3)重复(1)(2),知道图为空若最终图不为空,即剩下了入度不为0的顶点,则图必然有环例题:https://leetcode-cn.com/problems/find-eventual-safe-

2021-08-06 01:24:21 619

原创 【C++】function

#include<functional>int foo(int x, int y){ return x+y;}int main() { //定义一个返回值bool,具有一个int参数的函数 function<bool(int)> inner = [&](int x) { //函数定义... return true; }; //直接调用 .

2021-08-06 01:07:36 162

原创 【C++】单调栈

例题:https://leetcode-cn.com/problems/number-of-visible-people-in-a-queue/有n个人排成一个队列,从左到右编号为0到n - 1。给你以一个整数数组heights,每个整数 互不相同,heights[i]表示第i个人的高度。一个人能 看到 他右边另一个人的条件是这两人之间的所有人都比他们两人 矮。更正式的,第i个人能看到第j个人的条件是i < j且min(heights[i], heights[...

2021-08-03 23:21:31 240 1

原创 【C++】Dijkstra单源最短路径(迪杰斯特拉)

思想:贪心。将所有节点分成两类:已确定从起点到当前点的最短路径长度的节点,以及未确定从起点到当前点的最短路长度的节点。(下面简称「未确定节点」和「已确定节点」)。每次从「未确定节点」中取一个与起点距离最短的点,将它归类为「已确定节点」,并用它「更新」从起点到其他所有「未确定节点」的距离。直到所有点都被归类为「已确定节点」。数据:(1)集合S:已求得的最短路径顶点,初始化把源点v0放入(2)数组dist[]:从源点v0到顶点i当前的最短路径长度,初始化为MAX(3)arcs[0][i]:图的邻接矩

2021-08-02 23:20:34 228

原创 【C++】priority_queue

1、使用vector<pair<int, int>> power;//数组直接初始化小根堆priority_queue q(greater<pair<int, int>>(), move(power));q.top();# 官方文档https://en.cppreference.com/w/cpp/container/priority_queue#include <functional>#include <queue.

2021-08-01 14:14:10 282

原创 【官方文档】

Java API:Overview (Java SE 16 & JDK 16)C++ API:cppreference.com

2021-08-01 13:30:38 64

原创 状态压缩DP

将一个状态转化成一个数,如[1,0,1,0,1,0]可用二进制数101010直接表示,常用于动规、搜索等详情参考https://www.cnblogs.com/mxrmxr/p/9799832.html

2021-07-11 13:51:54 62

原创 【C++】快速幂与矩阵快速幂

快速幂:int fastpow(int base,int n,int mod){ int ans=1; while(n){ if(n&1) ans*=base%mod; base*=base; n>>=1; } return ans%mod;}取模是避免溢出,因为幂运算结果可能太大。同模原理:A*B % C = (A%C * B%C)%C...

2021-07-11 13:25:24 514

原创 安装python环境 cmd下运行py文件 生成exe

1. 安装Anaconda,Anaconda里包含了很多python开发相关的工具包,包括pythonanaconda | 镜像站使用帮助 | 清华大学开源软件镜像站 | Tsinghua Open Source Mirror2. 安装Anaconda后cmd里直接输入python并不能调用到,反而是跳出了微软家的商店增加环境变量的系统变量:D:\Users\13531\anaconda3D:\Users\13531\anaconda3\Scripts增加用户变量:D:\Users\13

2021-01-10 14:07:26 701 1

原创 【力扣-中等】86. 分隔链表

给你一个链表和一个特定值 x ,请你对链表进行分隔,使得所有小于 x 的节点都出现在大于或等于 x 的节点之前。你应当保留两个分区中每个节点的初始相对位置。示例:输入:head = 1->4->3->2->5->2, x = 3输出:1->2->2->4->3->5来源:力扣(LeetCode)链接:https://leetcode-cn.com/problems/partition-list【解答】ListNode

2021-01-03 23:36:07 89

原创 【力扣-困难】239. 滑动窗口最大值

给你一个整数数组 nums,有一个大小为k的滑动窗口从数组的最左侧移动到数组的最右侧。你只可以看到在滑动窗口内的 k个数字。滑动窗口每次只向右移动一位。返回滑动窗口中的最大值。示例 1:输入:nums = [1,3,-1,-3,5,3,6,7], k = 3输出:[3,3,5,5,6,7]解释:滑动窗口的位置 最大值--------------- -----[1 3 -1] -3 5 3 6 7 3...

2021-01-03 00:05:43 140

原创 【力扣-简单】605. 种花问题

假设你有一个很长的花坛,一部分地块种植了花,另一部分却没有。可是,花卉不能种植在相邻的地块上,它们会争夺水源,两者都会死去。给定一个花坛(表示为一个数组包含0和1,其中0表示没种植花,1表示种植了花),和一个数n。能否在不打破种植规则的情况下种入n朵花?能则返回True,不能则返回False。示例 1:输入: flowerbed = [1,0,0,0,1], n = 1输出: True示例 2:输入: flowerbed = [1,0,0,0,1], n = 2输出: Fals...

2021-01-01 23:28:37 104

原创 【力扣-中等】435. 无重叠区间

给定一个区间的集合,找到需要移除区间的最小数量,使剩余区间互不重叠。注意:可以认为区间的终点总是大于它的起点。区间 [1,2] 和 [2,3] 的边界相互“接触”,但没有相互重叠。示例 1:输入: [ [1,2], [2,3], [3,4], [1,3] ]输出: 1解释: 移除 [1,3] 后,剩下的区间没有重叠。示例 2:输入: [ [1,2], [1,2], [1,2] ]输出: 2解释: 你需要移除两个 [1,2] 来使剩下的区间没有重叠。示例 3:输入:

2020-12-31 17:26:21 109

原创 【力扣-简单】1046. 最后一块石头的重量

有一堆石头,每块石头的重量都是正整数。每一回合,从中选出两块 最重的 石头,然后将它们一起粉碎。假设石头的重量分别为x 和y,且x <= y。那么粉碎的可能结果如下:如果x == y,那么两块石头都会被完全粉碎;如果x != y,那么重量为x的石头将会完全粉碎,而重量为y的石头新重量为y-x。最后,最多只会剩下一块石头。返回此石头的重量。如果没有石头剩下,就返回 0。示例:输入:[2,7,4,1,8,1]输出:1解释:先选出 7 和 8,得到 1,所以数组转...

2020-12-30 21:28:38 92

原创 【力扣-困难】188. 买卖股票的最佳时机 IV

给定一个整数数组prices ,它的第 i 个元素prices[i] 是一支给定的股票在第 i 天的价格。设计一个算法来计算你所能获取的最大利润。你最多可以完成 k 笔交易。注意:你不能同时参与多笔交易(你必须在再次购买前出售掉之前的股票)。示例 1:输入:k = 2, prices = [2,4,1]输出:2解释:在第 1 天 (股票价格 = 2) 的时候买入,在第 2 天 (股票价格 = 4) 的时候卖出,这笔交易所能获得利润 = 4-2 = 2 。示例 2:输入:k = 2..

2020-12-29 19:17:04 71

原创 【力扣-困难】330. 按要求补齐数组

给定一个已排序的正整数数组 nums,和一个正整数n 。从[1, n]区间内选取任意个数字补充到nums中,使得[1, n]区间内的任何数字都可以用nums中某几个数字的和来表示。请输出满足上述要求的最少需要补充的数字个数。示例1:输入: nums = [1,3], n = 6输出: 1解释:根据 nums里现有的组合[1], [3], [1,3],可以得出1, 3, 4。现在如果我们将2添加到nums 中,组合变为: [1], [2], [3], [1...

2020-12-29 10:32:40 128

原创 【力扣-简单】205. 同构字符串

给定两个字符串s和t,判断它们是否是同构的。如果s中的字符可以被替换得到t,那么这两个字符串是同构的。所有出现的字符都必须用另一个字符替换,同时保留字符的顺序。两个字符不能映射到同一个字符上,但字符可以映射自己本身。示例 1:输入: s = "egg", t = "add"输出: true示例 2:输入: s = "foo", t = "bar"输出: false示例 3:输入: s = "paper", t = "title"输出: true说明:你可以假...

2020-12-27 13:09:42 110

原创 【力扣-困难】85. 最大矩形

给定一个仅包含0和1、大小为rows x cols的二维二进制矩阵,找出只包含1的最大矩形,并返回其面积。示例 1:输入:matrix = [["1","0","1","0","0"],["1","0","1","1","1"],["1","1","1","1","1"],["1","0","0","1","0"]]输出:6解释:最大矩形如上图所示。示例 2:输入:matrix = []输出:0示例 3:输入:matrix = [["0"]]输出:0示例 4...

2020-12-26 18:41:34 284

原创 【力扣-困难】84. 柱状图中最大的矩形

给定n个非负整数,用来表示柱状图中各个柱子的高度。每个柱子彼此相邻,且宽度为 1 。求在该柱状图中,能够勾勒出来的矩形的最大面积。以上是柱状图的示例,其中每个柱子的宽度为 1,给定的高度为[2,1,5,6,2,3]。图中阴影部分为所能勾勒出的最大矩形面积,其面积为10个单位。示例:输入: [2,1,5,6,2,3]输出: 10https://leetcode-cn.com/problems/largest-rectangle-in-histogram/【单调栈】遍...

2020-12-26 15:23:09 96

原创 【力扣-简单】455. 分发饼干

假设你是一位很棒的家长,想要给你的孩子们一些小饼干。但是,每个孩子最多只能给一块饼干。对每个孩子 i,都有一个胃口值g[i],这是能让孩子们满足胃口的饼干的最小尺寸;并且每块饼干 j,都有一个尺寸 s[j]。如果 s[j]>= g[i],我们可以将这个饼干 j 分配给孩子 i ,这个孩子会得到满足。你的目标是尽可能满足越多数量的孩子,并输出这个最大数值。示例1:输入: g = [1,2,3], s = [1,1]输出: 1解释:你有三个孩子和两块小饼干,3个孩子的胃口值分别...

2020-12-25 14:01:10 86

原创 【力扣-简单】387. 字符串中的第一个唯一字符

给定一个字符串,找到它的第一个不重复的字符,并返回它的索引。如果不存在,则返回 -1。示例:s = "leetcode"返回 0s = "loveleetcode"返回 2提示:你可以假定该字符串只包含小写字母。【解答】int firstUniqChar(string s) { int countS[26]{}; for (int i = 0; i < s.length(); i++){ countS[s[i].

2020-12-23 17:29:01 73

原创 【力扣-中等】103. 二叉树的锯齿形层序遍历

给定一个二叉树,返回其节点值的锯齿形层序遍历。(即先从左往右,再从右往左进行下一层遍历,以此类推,层与层之间交替进行)。例如:给定二叉树[3,9,20,null,null,15,7], 3 / \ 9 20 / \ 15 7返回锯齿形层序遍历如下:[ [3], [20,9], [15,7]]来源:力扣(LeetCode)链接:https://leetcode-cn.com/problems/binary-tree-zigzag-...

2020-12-22 13:35:02 153

原创 【力扣-简单】746. 使用最小花费爬楼梯

数组的每个索引作为一个阶梯,第i个阶梯对应着一个非负数的体力花费值cost[i](索引从0开始)。每当你爬上一个阶梯你都要花费对应的体力花费值,然后你可以选择继续爬一个阶梯或者爬两个阶梯。您需要找到达到楼层顶部的最低花费。在开始时,你可以选择从索引为 0 或 1 的元素作为初始阶梯。示例1:输入: cost = [10, 15, 20]输出: 15解释: 最低花费是从cost[1]开始,然后走两步即可到阶梯顶,一共花费15。示例 2:输入: cost = [1, 100, 1...

2020-12-21 13:05:08 136

原创 【C语言待实现】矩阵相乘 分治和Strassen

【暴力】int** get_matrix(int n) { int** c; c = (int**)malloc(sizeof(int*) * n);//为二维数组分配n行 for (int i = 0; i < n; ++i) {//为每列分配n个空间 c[i] = (int*)malloc(sizeof(int) * n); } return c;}//暴力相乘int** square_matrix_multiply(int** a, int**b, int n)

2020-12-20 23:32:07 793 1

原创 【力扣-中等】316. 去除重复字母

给你一个字符串s,请你去除字符串中重复的字母,使得每个字母只出现一次。需保证返回结果的字典序最小(要求不能打乱其他字符的相对位置)。示例 1:输入:s = "bcabc"输出:"abc"示例 2:输入:s = "cbacdcbc"输出:"acdb"提示:1 <= s.length <= 10^4s 由小写英文字母组成来源:力扣(LeetCode)链接:https://leetcode-cn.com/problems/remove-duplicate...

2020-12-20 14:52:24 121

原创 [【力扣-中等】48. 旋转图像

给定一个 n×n 的二维矩阵表示一个图像。将图像顺时针旋转 90 度。说明:你必须在原地旋转图像,这意味着你需要直接修改输入的二维矩阵。请不要使用另一个矩阵来旋转图像。、示例 1:给定 matrix =[ [1,2,3], [4,5,6], [7,8,9]],原地旋转输入矩阵,使其变为:[ [7,4,1], [8,5,2], [9,6,3]]来源:力扣(LeetCode)链接:https://leetcode-cn.com/problems/...

2020-12-19 21:49:05 111 2

原创 【力扣-中等】714. 买卖股票的最佳时机含手续费

给定一个整数数组prices,其中第i个元素代表了第i天的股票价格 ;非负整数fee 代表了交易股票的手续费用。你可以无限次地完成交易,但是你每笔交易都需要付手续费。如果你已经购买了一个股票,在卖出它之前你就不能再继续购买股票了。返回获得利润的最大值。注意:这里的一笔交易指买入持有并卖出股票的整个过程,每笔交易你只需要为支付一次手续费。示例 1:输入: prices = [1, 3, 2, 8, 4, 9], fee = 2输出: 8解释: 能够达到的最大利润: 在此处买...

2020-12-19 20:32:13 104

原创 【力扣-简单】122. 买卖股票的最佳时机 II

给定一个数组,它的第i 个元素是一支给定股票第 i 天的价格。设计一个算法来计算你所能获取的最大利润。你可以尽可能地完成更多的交易(多次买卖一支股票)。注意:你不能同时参与多笔交易(你必须在再次购买前出售掉之前的股票)。示例 1:输入: [7,1,5,3,6,4]输出: 7解释: 在第 2 天(股票价格 = 1)的时候买入,在第 3 天(股票价格 = 5)的时候卖出, 这笔交易所能获得利润 = 5-1 = 4 。 随后,在第 4 天(股票价格 = 3)的时候买入,在第 5 天(...

2020-12-17 12:56:24 68

原创 【C语言】分治和动规 最大子数组问题

子数组内数字的和最大1、分治设立数组中点A[mid],将数组分为左半和右半部分,子数组只可能存在于三个位置:(1)左半部分(2)右半部分(3)跨越了中点对于(1)(2),可以不断的作中点进行划分,递归的求解对于(3),因为有位置限制,子数组左半部分一定以A[mid]结尾,右半部分一定以A[mid]开头,相当于求左半部分最大子数组+A[mid]+右半部分最大子数组:【解答】#include <stdio.h>//求跨越了中点的部分int find_max_..

2020-12-16 19:05:04 239

空空如也

空空如也

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

TA关注的人

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