- 博客(29)
- 问答 (2)
- 收藏
- 关注

原创 第六章 树和二叉树
二叉树顺序存储#define MAXSIZE 50 //二叉树的最大结点数typedef int Status;typedef char TElemType;typedef TElemType SqBiTree[MAXSIZE]; //0号单元存储根节点SqBiTree bt;二叉树链式存储:二叉链表#include<stdio.h>#include"BiTree_Stack.h"/* * 链式存储表示 * 二叉链表 */Status Cre.
2021-04-11 14:24:52
248

原创 贪心法 习题10道
HDOJ 1009 FatMouse’ Trade思路按照J[i]/F[i]排序。从比值大的开始计算。#include<bits/stdc++.h>using namespace std;struct food{ int j; int f; double rate;}getfood[1001];bool comp(struct food a,struct food b){ return (a.rate) < (b.rate);}int
2021-03-28 21:25:31
661

原创 Win10下安装C&C++的IDE
我使用的Win10电脑下已经有Dev-C++以及CodeBlocks以及Vim。常用的是Dev-C++,安装简单,界面简单,编译简单,对于不追求复杂操作的人来说很友好。但是大佬们很多都用CodeBlocks,Vim,VSCode,或者CLion。今天我把这几个都安装一下,简单Hello一下。CLion 是构建项目并运行,对于单个cpp文件的编译并不支持。请看第3点Dev-C++用起来最简单,不论是新建或者编译运行调试,或者安装。
2021-03-22 17:35:42
2731
4
原创 HDOJ 2051-2060
2051 Bitset十进制转二进制#include<bits/stdc++.h>using namespace std;int main(){ int n; while(~scanf("%d",&n)){ stack<int>s; while(n!=0){ s.push(n%2); n = n/2; } while (!s.empty(
2021-04-11 23:40:54
203
原创 逆波兰表达式(后缀表达式) 写 表达式求值
表达式求值,可以用栈,这里有栈的一些表达和使用、包括表达式求值。这里是伪代码以及AC代码可以去HDOJ测评。现在我用后缀表达式来重做一次。可以计算简单的加减乘除带括号。#include<stdio.h>#include<stdlib.h>/* * 1建立两个栈:符栈、逆波兰表达式栈(存放数字和运算符) * 2char ch; * 3while(ch!='\n') * if(ch==' ') continue;scanf("%c",&ch) *.
2021-04-11 20:49:54
247
原创 第四章 串
定长顺序存储SString一个结构体中:一个数组存储字符串,一个整型存储长度#include<stdio.h>typedef int Status;//定长顺序存储//一组连续的存储单元#define MAXSTRLEN 255typedef struct SString { int leng=0; char data[MAXSTRLEN+1]={'0'}; //第一个位置不使用}SString;void StrCopy(SString &T, i.
2021-04-07 23:35:31
199
原创 第三章 栈和队列
栈(顺序存储)、数值转换、括号匹配的检验、汉诺塔#include<stdio.h>#include<stdlib.h>#define Status int#define SElemType int#define STACK_INIT_SIZE 20typedef struct{ SElemType * base; SElemType * top; int stacksize; //当前已分配的空间}SqStack;//S.top指向栈顶.
2021-04-06 10:44:47
657
2
原创 第二章 线性表
顺序表#include<stdio.h>#include<stdlib.h>#define LIST_SIZE 10#define ElemType inttypedef struct{ ElemType * elem; //存储空间基址 int length; //当前长度 int listsize; //当前分配的存储空间,单位为sizeof(int)}Sqlist;//初始化线性表int InitList(Sqlist .
2021-04-05 09:03:03
254
4
转载 C指针解析
学习了《C程序设计(第四版)-谭浩强》,做此笔记Iint i = 1;int *j = &i;一个变量的地址 称为该变量的“指针”。如果有一个变量j专门用来存放另一个变量的地址(即指针),则它称为“指针变量”。指针变量用来存放地址。指针变量的值是地址(即指针)。指针变量存放指针。指针变量存放地址。指针是具体的一个地址。指针变量是存放地址的一个变量。IIint i = 0;int * pointer; //读作:定义了一个指针变量pointer...
2021-03-31 16:45:11
444
原创 动态规划 LCS & LIS
HDOJ 1159 Common Subsequence动态规划:最长公共子序列( Longest Common Subsequence, LCS )问题。AC代码。使用二维数组。递推公式:dp[i][j]={dp[i−1][j−1]+1Xi=Yi,i>0,j>0max{dp[i][j−1],dp[i−1][j]}Xi≠Yi,i>0,j>0dp[i][j] = \begin{cases}dp[i-1][j-1]+1{\qquad}X_i=Y_i,i>0,j&
2021-03-28 21:21:39
309
原创 STL介绍
一、容器1.顺序式容器vector 动态数组list 列表deque 双向队列queue 队列priority_queue 优先队列stack 栈vector函数v.begin()2.关联式容器set 集合multiset 快速查找map 一对一映射multimap 一对多映射...
2021-03-20 17:54:00
213
原创 HDOJ 1237 简单计算器
核心部分伪代码:stark 符栈,数栈;c=getchar()while(c!='\n' || !符栈.empty()){ if(c是操作数) 数栈.push();c=getchar(); else if(符栈.empty()) 符栈.push(c);c=getchar(); else switch(precede(符栈.top(),c)){//比较栈运算符和当前运算符的优先级 case '<': 符栈.push(c); c=getchar();break; case '
2021-03-18 20:58:49
268
原创 HDOJ 2041-2050
2041 超级楼梯技巧:登上第10级台阶的走法=登上第9级台阶的走法+登上第8级台阶的走法。是斐波那契数列。递归方法:#include<bits/stdc++.h>int time(int n){ if(n==2 || n==1) return 1; return time(n-1)+time(n-2);}int main(){ int n; scanf("%d",&n); while(n--){ int m; scanf("%d",&m);
2021-03-17 21:47:37
191
原创 HDOJ 2031-2040
2031 进制转换最恶心我的是int类型转char类型。int类型的1加上48等于char类型的1。原来是int类型的1的十六进制是0x01、十进制是1、八进制是0001,加上48分别变成变成0x31、49、0061。正好就是1的ASCII码。如果结果是字符类型,正好就是字符1。#include<bits/stdc++.h>int main(){ int n,r; char num[34]; while(~scanf("%d %d",&n,&r)){ if
2021-03-16 22:20:46
145
原创 贪心法
贪心法 C++贪心法通过局部最优争取达到全局最优,虽然并不总是能导致全局最优适用于贪心法问题的特征:1.问题的最优解包含其子问题的最优解;2.问题的最优解可以通过一系列局部最优解来得到。常见问题分类1.活动安排问题HDOJ 2037 今年暑假不AC解题思路:考虑下面三种贪心策略:1.最早开始时间(错误,如果一直不结束,后面的活动无法开始)2.最早结束时间(正确,早结束早开始)(重点要想到这个)3.用时最少(错误)算法步骤如下:1.把所有活动按照结束时间从早到晚排序2.
2021-03-16 21:46:15
296
原创 HDOJ 2021-2030
2021 发工资咯:)#include<bits/stdc++.h>int main(){ int n; while(~scanf("%d",&n)){ if(n==0) break; int sum=0,individual=0; for(int i=0;i<n;i++){ scanf("%d",&individual); int bai = individual/100; int wushi = (individual-bai*10
2021-03-15 14:06:47
260
原创 HDOJ 2011-2020
2011 多项式求和#include<bits/stdc++.h>int main(){ int n; while(~scanf("%d",&n)){ int m; for(int i=0;i<n;i++){ scanf("%d",&m); double addition=0; for(int j=1;j<=m;j++){ addition += pow(-1,j-1)*1/j; } printf("%.2f\n"
2021-03-14 18:17:52
139
原创 HDOJ 2000-2010
Output Limit Exceeded可能是while死循环出不来。修改:while(~scanf(可能是输入数据的类型错误。2000 ASCII码排序#include<bits/stdc++.h>int main(){ char ch[3]; while(~scanf("%c%c%c",&ch[0],&ch[1],&ch[2])){ for(int i=0;i<3-1;i++){ //冒泡 for(int j=0;j<3-i-.
2021-03-14 14:07:08
181
原创 HDOJ 3233
HDOJ 3233 Download ManagerProblem DescriptionJiaJia准备下载20,000个文件。如果这些文件一起下载那么所有文件都不能正常下载。所以他找了一个下载器。设T为要下载的文件数量,下载器会遵循以下原则:1.最小的文件有最高的优先下载权。所以在刚开始会下载最小的n个文件。如果遇到相同大小的文件,选择文件中剩余量较小的文件进行下载。假设带宽至少有50MB/s,n个文件一定可以同时下载。2.可用带宽平均分配给所有正在下载的文件。当一个文件被下载完毕之后,它占
2021-03-13 18:43:28
134
原创 Python 对DataFrame数据分组并排序并选择最优数据
Python 对DataFrame数据分组并排序并选择最优数据目的:对数据按第一列分组,按第二列降序排序,按第三列升序排序,选择每组中最好的输出数据:开始:import pandas as pddf = pd.read_excel('product.xlsx',names=['product','score1','score2'],header=None)dfdf = df.so...
2020-04-16 11:36:24
5673
5
原创 Matlab 对数据按类别进行分层抽样
Matlab 对数据按类别进行分层抽样function [train_x,train_y,test_x,test_y] = getdata()[data,~] = xlsread("XXX.xlsx");data(find(isnan(data)))=0; % 去掉数据中的NaNlabels = data(:,end); % 最后一列是标签列train_x=[];train_...
2020-04-15 16:19:05
3906
3
原创 Python 字符串列表进行数据频度统计并排名
对字符串列表进行数据频度统计,并且进行排名,选出前几名import numpy as npli = ['cc','aa','cc','bb','aa','cc','cc','aa','cc','##','##','##']uni = np.unique(li) # 唯一值dic = dict((a, li.count(a)) for a in uni) # 以字典格式来显示数据频度p...
2020-04-13 10:33:01
443
原创 Python 借助DataFrame的pivot进行数据的可视化
借助DataFrame的pivot函数进行数据的可视化这是数据1.把数据读取成DataFrame格式import pandas as pdimport matplotlib.pyplot as pltdf = pd.read_csv('score(1).csv',header=None)data_original = {'algorithm':df.iloc[1:,1].values...
2020-04-09 11:31:26
1405
1
原创 Python 把几张图片拼接成一张图片,并且写上文字
把几张图片从上到下拼接成一张图片# 要拼接的图片名称是1,2,3...这样有顺序的# 把当前目录下的所有图片从上到下拼接成一张图片# 该图片的宽度是图片中最宽图片的宽度# 不改变原来图片的大小,所以拼接后有的地方存在未填充的地方from os import listdirfrom PIL import Imagespace = 10 # 拼接图片时上下两张图片之间的间隙# 获...
2020-04-08 00:46:39
2102
原创 Python 修改打开Jupyter后的初始工作路径
打开进入开始菜单栏中的Anaconda,右击 Jupyter Notebook,点击 更多,点击 打开文件位置右击 Jupyter Notebook,进入属性有一栏是 目标(T)定位到最后jupyter-notebook-script.py %USERPROFILE%增加你自己的工作路径jupyter-notebook-script.py E:\Python\Workspace_Ju...
2020-03-10 12:17:59
289
1
空空如也
阿里云服务器搭建的wordpress,通过域名访问,与通过IP地址访问,界面略有错误之处
2021-12-06
谷歌浏览器打开一个空白页面,CPU占用率高居不下
2021-05-27
TA创建的收藏夹 TA关注的收藏夹
TA关注的人