ICode9

精准搜索请尝试: 精确搜索
  • 【动态规划模板】标准的dp模板2021-09-29 12:31:50

    //标准的dp模板 class Solution { public int minPathSum(int[][] grid) { int m = grid.length; int n = grid[0].length; int[][] dp = new int[m][n];//dp[i][j]代表走到第[i][j]格子的最小总和 //初始化第一行和第一列

  • BASE64转换为图片格式2021-09-29 12:02:57

    # 将BASE64转换为图片格式 **服务名: tmk** **服务Git组:hcc-api** ## 代码 ```java public static final String JPG = ".jpg"; public MessageBody<?> generate(GenerateImageRequest request) { String pinyin = PinyinUtil.getPinyin(request.g

  • 最小生成树问题-kruskal算法2021-09-29 11:32:37

    kruskal适合稀疏图 定义边结构体 typedef struct { int begin; int end; int weight; }Edge; 算法实现代码 //邻接矩阵转边集数组 void MGraph2EdgeArr(MGraph G, Edge* edge); //找到顶点index的根节点下标返回 int Find(int* parent, int index); //使用克鲁斯卡

  • Volatile关键字2021-09-29 10:31:03

    Volatile关键字的作用:         预防可见性问题,重排序问题。 Volatile是一种同步机制,比synchronized或者Lock相关类更轻量,因为使用Volatile并不会发生上下文切换等开销很大的行为。         一个变量被修饰成volatile,JVM就知道了这个变量可能会被并发修改。 但是,v

  • 9.282021-09-28 23:33:47

    今天编写了用栈实现回文的代码. 代码如下: #include<iostream>using namespace std;const int Maxsize = 100;class stact {public: char data[Maxsize]; int top = 0; void push(char b) { data[++top] = b; } char pop() { return data[top--];

  • Escape2021-09-28 19:33:55

    #include<iostream> #include<vector> #include<queue> #include<cstring> using namespace std; const int N = 110; char os[] = {'N', 'S', 'W', 'E'}; int dx[] = {-1, 1, 0, 0, 0}, dy[] = {0, 0, -

  • LeetCode:最长无重复子串2021-09-28 13:04:51

    int lengthOfLongestSubstring(char* s){ int len=0; int start=0; int end=0; char map[128]={0}; map[(int)*(s+start)]=1; while(*(s+end)!='\0') { // if(map[(int)*(s+end)]==0) // { // map[(int

  • MakeFile的使用2021-09-28 12:02:23

    文章目录 MakeFile的使用一、Linux环境下的编译流程二、静态库与动态库2.1 简述2.2 静态库2.3 动态库2.4 优缺点 三、MakeFile的制作第1个版本第2个版本第3个版本第4个版本第5个版本静态库的MakeFile动态库的MakeFile over MakeFile的使用 一、Linux环境下的编译流程 主

  • 207. 课程表2021-09-28 10:31:08

    算法记录 LeetCode 题目:   在选修某些课程之前需要一些先修课程。 先修课程按数组 prerequisites 给出,其中 prerequisites[i] = [ai, bi] ,表示如果要学习课程 ai 则 必须 先学习课程 bi 。 思路 算法记录说明一、题目二、分析 总结 说明 一、题目   输入:numCou

  • IntelliJ IDEA 激活码(2021年最新永久激活码)2021-09-28 10:00:43

    一、IntelliJ IDEA 激活码 下边这个 IDEA 激活码失效了的话,请关注微信公众号:Java团长,然后发送“ 激活码 ”即可获取最新且有效的。 1STL5S9V8F-eyJsaWNlbnNlSWQiOiIxU1RMNVM5VjhGIiwibGljZW5zZWVOYW1lIjoi5rC45LmF5r+A5rS7IHd3d8K3YWppaHVvwrdjb20iLCJhc3NpZ25lZU5hbWUiOiIiLCJh

  • 队列实现回文2021-09-27 23:02:23

    #include<iostream>#include<queue>#include<string>using namespace std;int main(){ queue<char>S1; queue<char>S2; string s; getline(cin,s); for(int j=0;j<s.length();j++){ if(s[j]==' '){ for(int m=j;m<s.lengt

  • 算法学习:1-1 贪心算法2021-09-27 22:32:46

    所谓贪心算法,就是每次操作保证都是局部最优解,以至于最终的结果是全局最优解。 习题1:455.分发饼干 使用贪心算法,关键在于找到贪心策略,即每一步操作都是局部最优解。 由题可知,要尽可能满足多的孩子,只要给胃口值最小的孩子分配能让他满足的最小尺寸的饼干,这就是本题的贪心策略

  • PAT-Advanced-【1002】A+B for Polynomials2021-09-27 21:31:15

    【1002】 A+B for Polynomials (25 分)   1 //1002 A+B for Polynomials (25 分) 2 #include<iostream> 3 #include<iomanip> 4 using namespace std; 5 double a[1001] = { 0 }; 6 int main() { 7 int k,n,count=0; 8 double x; 9 int group

  • Go基础——流程控制for, if, switch, goto2021-09-27 20:34:37

    5.流程控制 5.1if语句 score := 91 if score >=90 { fmt.Println("90+") } else if score < 80 { fmt.Println("80+") } else { fmt.Println("harder") } } 这上下两种写法, 有区别, 和其他语言一样,可以想象,下面的写法中的score不能被外面引用 if score := 91; sco

  • 联通分量 [割点·割边]2021-09-27 19:34:19

    魔板 割点: void Tarjan(int u,int lst) { dfn[u]=low[u]=++Time; st[++tp]=u; for(int i=head[u];i;i=nxt[i]) { int v=to[i]; // int k=i,p=lst^1; if(i==(lst^1)) continue; // printf("!%d %d\n",u,v); if(!dfn[v]) { Tarjan(v,i); if(!mark[i]&a

  • 重学C++(二)2021-09-27 19:32:53

    一、运算符的重载、拷贝构造、临时对象优化 假如有个叫Complex的类,下面是他的加法重载 Complex Complex::operator+ (const Comples &x) { Complex tmp; tmp._real=_real+x._real; return tmp; } 此处多了一次拷贝构造,临时对象优化的话可以如下 Complex Complex::

  • 线性查找法02:循环不变量和算法复杂度2021-09-27 19:01:50

    循环不变量 public static<E> int search(E[] arr, E target){ /** * 循环不变量,就是在循环中始终遵守的原则 * 因为在arr[0...i-1]中没有找到目标,所以才继续循环 * 这个arr[0...i-1]就是循环不变量,在写循环时一定要清楚循环不变量是什么 */ for (int

  • 快速排序_听韩顺平课笔记2021-09-27 16:34:37

    1.快速排序的思想 快速排序是对冒泡排序的一种改进 基本思想(递归):通过一趟排序将要排序的数据分割成独立的两部分,其中一部分的所有数据都比另一部分的所有数据小(基准),然后再按此方法,对这两部分数据分别进行快速排序。 2.快速排序的时间复杂度O(nlogn) 3.快速排序的代码实现 packag

  • P1378 油滴扩展2021-09-27 13:35:39

    暴力出全排列然后求出这种放油的顺序得到的覆盖面积,求所有覆盖面积的最大值,实际做的时候ans保存的是所有半径的平方的和的最大值。 在放一个油滴A的时候,需要和之前放下的油滴B一一比较,如果A和B的距离小于B的半径,那么放不了,否则可能的半径为\(r(A)=dist(A, B)-r(B)\),和所有点比较后

  • C++中++cnt1[s1[i]-'a']的意思2021-09-27 13:34:02

    vector<int> cnt(26); n=s1.length(); for(int i=0;i<n;i++){ ++cnt[s1[i]-'a']; }      s1是字符数组,s1[i]-'a'是为了将a变成0,b变成1,c变成2.       cnt用于统计每个字母在s1中出现的次数。       ++cnt[s1[i]-'a'] s1[i]是一个字符,递增与该

  • LeetCode第260场周赛2021-09-26 21:34:54

    我的第十一次LeetCode周赛 心情第一题(增量元素之间的最大差值)第二题(网格游戏)第三题(判断单词是否能放入填字游戏内)第四题(解出数学表达式的学生分数) 心情 题目在此 ~~补题中

  • 图(Prime算法、 Kruskal算法、Dijkstra算法、Floyd算法、AOV网)2021-09-26 21:04:38

    最小生成树 Prim算法 算法思想:从图中任意取出一个顶点,把它当成一颗树,然后从与这棵树相连接的边中选取一条最短的(权值最小)的边,并将这条边及其所连接的顶点并入到当前树中。 生成树生成过程 候选边长的算法:此时树中只有0这个顶点,与0相连接的顶点分别为1、2、3长度分别为5、1、2这

  • Java学习 数据存储、数据类型、变量、运算符2021-09-26 21:01:11

    1.1数据类型 1.1.1数据存储 程序 : 一堆命令的集合,一般是个可执行文件 1 数据想要运算,必须先存储 2 存储方式 内存 : 两端无限延伸的线 硬盘 : 螺旋线 3 存储单位 Bit = 比特 = 位 Byte = 字节 = 8bit  -128 ~127 为了保存正负数,只能丢失一半精度,最高位作为符号位 1 表示负

  • 初学C语言22021-09-26 20:32:12

    一.变量 交换变量需要引入第三个量,临时变量  二.复合赋值 算术运算符和赋值运算符结合形成复合赋值运算符 “+=”,“-=”,“*=”,“/=”,“%=” 注意两个运算符之间不要有空格 递增运算符:“++”,“--” 三.前缀后缀 “++”和“--”可以放在变量之前,称为前缀;放在变量之后称为后缀。

  • 剑指 Offer 47. 礼物的最大价值2021-09-26 18:59:31

    LeetCode - 剑指 Offer 47. 礼物的最大价值 题目描述分析代码总结 题目描述 难度:中等 在一个 m*n 的棋盘的每一格都放有一个礼物,每个礼物都有一定的价值(价值大于 0)。你可以从棋盘的左上角开始拿格子里的礼物,并每次向右或者向下移动一格、直到到达棋盘的右下角。给定一个

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有