【算法学习】王晓东数据结构习题重写
第三章 栈
p57 等价类划分问题 - 邻接表的DFS
123456789101112131415161718192021222324252627282930313233343536/** 结构体为 AGragh n为元素个数 r为等价条件数 输入的集合是1~n的数**/void equiv(int n, int r) { int a, b, visit[n+1] = {0}; stack<int> stack; AGragh *g = new AGragh(); G->n = n, G->e = r; for (int i = 1; i <= n; i++) { g->adjList[i].firstarc->next = NULL; // 为数组中的每个结点新建链表 } for(int i = 1; i < r; i++) { scanf("%d%d", &a, &b); //输入等价条件 创建邻接表 ...
【心理学】B站视频合集
##《用心理学实现自我进化》系列
共有十章:
第一章:性格剖析:重新认识你自己av93113612
第二章:反脆弱:塑造强大内心av93119288
第三章:情绪罗盘:探测你的喜怒哀乐av93379154
第四章:情绪舵手:做情绪的主人av93380354
第五章:告别单身:当爱情来敲门av93115624
第六章:爱情宝典:赢得爱情长跑av93379627
第七章:原生家庭:与内在小孩对话av92334393
第八章:新生家庭:幸福婚姻的秘诀(音频文件点击主页查看AU1362014)
第九章:认知力:做迷茫时代的明白人av93401966
第十章:影响力:改变他人的思想和行动av93401816
心理学课程
心理学导论:av60936589
普通心理学:av60190401
实验心理学:av59303733
发展心理学:av59302593
教育心理学:av59297076
社会心理学:av59303610
西方心理学史:av60961847
认知神经科学:av61013552
爱情心理学:av60971286 (白学)
沟通心理学:av60936140
游戏心理学:av60970 ...
关于我
新年的第二天。似乎和以往不太一样,今年早早的回家,似乎对过去没有任何留恋;对将来或有期待,却也不耐付诸于笔上。
千言万语,只希望过去一年来自己付出的努力,能够对得起二月份信誓旦旦的承诺,对得起四五月忙于项目学习的焦头烂额,对得起七八月份离家2000多公里的沉默,对得起十二月每日早起晚睡的坚持。
本来考试结束当晚满腔热血想要写写总结,后来也因为自己磨蹭的习惯草草作罢。
考研的时候,我时常在想,能否通过这段经历,挖掘自己的可能与不可能,已知和未知。答案是可以的。在学习的过程中,我不仅一次的发现“目标”于我而言的重要性,而“节奏”却是我致命的弱点。
其实我一直清楚也明白,阶段性胜利对我而言的重要性也许超过了目标本身,也仅有这种巨大的满足感才能推动我在一次一次濒临崩溃的时候继续坚持。当然,其实也没有这么夸张。只要开始时我将每个任务都想得无比困难,那么作为尘埃低处的自己,一定会努力地脚踏实地向前迈进。而本人的尿性,居然是能主动说服自己,把每个大目标看作是人生必须的体验,忍受常人不能忍受,甚至变成享受。实在佩服自己的功能。
而我最大的弱点,在这段时间体现得彻底。小时候班主任就提醒过我,“戒骄戒躁” ...
说说考研这件事
现在是2020年2月20日23点53分。
今天下午胆战心惊的查分数,连准考证都没输,成绩就直接出来了。
政治73,英语81,数学99,专业课121,总分374,完全出乎我的意料。感谢福大不杀之恩,我活着出来了。
在备考的那段时间,我也有心情低落焦虑的时候,并且很频繁,就好像有把刀子悬在我的背后,不敢转身,更别谈退后。可不会说自己有多努力认真,因为这都是应该做的。为了你的目标,见神杀神,见佛杀佛,坚持到最后一刻。倘若你踏踏实实,别人怎么可能是你的对手呢。总该相信自己的能力,但也正是因为如此,才更要使出全力,让别人看看,你不是那么好欺负的。
考研这件事情,对我影响重大。自从正式下定决心考研之后,就卸载了微信里所有娱乐app,过起了苦哈哈却有盼头的日子。
考研让我学会独处。
在备考前期很长一段时间我都是坐在图书馆的某个角落,为一天的学习做安排。不夸张的说,从1月1日起,到考研结束的那天,我因为贪睡而超过7点的天数不超过10天。每天6点半起床洗漱,准备早餐,第一个去图书馆背单词… 从一开始的不习惯,到后来的理所应当。这段早起的日子,让我呼吸了属于清晨的空气,沐浴了最纯净的阳光。
我真的不认为这 ...
【机器学习】AdaBoost原理
基本思想
相较于直接训练出一个强分类器,在训练集中找到一个弱分类器会简单很多。提升方法就是从弱学习算法出发,反复学习,得到一系列的弱分类器(基本分类器),然后组合这些弱分类器,构成一个强分类器。
我们需要解决的问题有两个:
每一轮如何改变训练数据的权值或概率分布?
如何将弱分类器合成一个强分类器?
AdaBoost针对这两个问题,做出以下解答:
假设现在有M轮的弱分类器选择。在每一轮训练中,提高那些被前一轮弱分类器错误分类样本的权值,而降低那些被正确分类样本的权值,使得那些没有得到正确分类的数据,由于其权值的加大而收到后一轮的弱分类器的更大关注。(注意,是样本的权值,不是分类器的权值)
使用加权多数表决的方法,加大分类误差率小的弱分类器的组合,使其在表决中起较大作用;减小分类误差率大的弱分类器的权值,使其在表决中起较小作用。
AdaBoost算法
假设有训练数据集$ T=\lbrace (x_1, y_1), …, (x_N, y_N)\rbrace ,标记有,标记有,标记有\lbrace{-1, +1}\rbrace$,我们将从该数据集中学到一系列的弱分类器,最后将它们 ...
【算法专题】算法设计与分析习题(一)
YY and Lucky Number
★ 题目信息
题目描述:
YY 的幸运数字是…,是什么数字我也不知道,但是已知这个数字的十进制表示(不含前导零)中只包含不超过两个不同的数字。
给定一个数 n ,请计算出不超过 n 的所有正整数中,有可能是 YY 的幸运数字的个数。
输入:
输入一行,包含一个正整数 n。
对于 60% 的数据:1≤n≤1051≤n≤10^51≤n≤105
对于 100% 的数据:1≤n≤1091≤n≤10^91≤n≤109
输出:
输出一个整数,表示不超过 nn 的所有正整数中,有可能是 YY 的幸运数字的个数。
输入样例:
1103
输出样例:
1101
样例解释:
不超过103的所有正整数中,只有102、103不可能是 YY 的幸运数字。
★ 题解
这题的解法五花八门,数位dp、二分的都有,比较了各方答案之后,感觉这个最好理解了…(实际是自己做不出来,想了两天,思路都太复杂)
对于一个数字而言,各个位置上的数字不能有超过两个不同,因此在使用dfs进行逐位遍历并循环可能取值的时候,需要有pre和post保存之前使用过的数字。
当i值和pre或者post ...
【论文阅读】《Style2paints》
在读论文的时候发现了这篇文章,写得非常好,所以想做个搬运。
基本信息
1. 论文标题:《Style Transfer for Anime Sketches with Enhanced Residual U-net and Auxiliary Classifier GAN》 —— 基于改进的残差型U-net和带辅助分类器的GAN(AC-GAN),实现动漫线稿的迁移式(自动)上色。
2. 论文链接:https://arxiv.org/abs/1706.03319
3. 研究领域:计算机图形学,线稿自动上色(Sketch Colorization),风格迁移(Style Transfer),深度学习(Deep Learning),生成式对抗网络(GAN)
4. 作者:Soochow University: Lvmin Zhang, Yi Ji, Xin Lin, Chunping Liu
5. 发表会议:2017 4th IAPR Asian Conference on Pattern Recognition (ACPR)
6. 关键词:动漫线稿自动上色算法,Style2paints算法原 ...
【机器学习】支持向量机原理
在支持向量机中有三个重要概念,也是组成支持向量机的重要构件,是需要时时关注的,如果文中提到它们,请一定注意:
最大间隔
高维映射
核方法
这三个构件是彼此独立又互相关联的关系。三者关系我会选择用旧式的冒险电影剧情来形容,那就是“千里之行始于‘最大间隔’,在‘高维映射’迎来升华,最后通过‘核方法’修成正果”。
支持向量机算法原理
最大间隔
支持向量机的原理说容易也真是容易,说不容易也真不容易。支持向量机说到底就是一种“线性分类器”,它以“间隔”作为损失的度量,目标通过不断调整多维的“直线”——超平面,使得间隔最大化。所谓“支持向量”,就是所有数据点中直接参与计算使得间隔最大化的几个数据点,这是支持向量机的得名由来,也是支持向量机的全部核心算法。
单就核心来看,实际上就是一种换了损失函数的线性方法。这也是为什么很多介绍支持向量机的教材的主要内容都放在怎么计算各种“间隔”上,给人一种支持向量机就是计算间隔的感觉。
这种简化方法选择突出支持向量机的基本运行逻辑,而且最大间隔说到底也就是一个计算问题,并不涉及太拗口的数学名词和太抽象的概念,在便于理解方面确实有优势。而且光靠间隔最大化,支 ...
【算法专题】贪心算法
贪心算法
区间选点
12345678910111213141516171819202122232425262728/* 给定N个闭区间[ai,bi],请你在数轴上选择尽量少的点,使得每个区间内至少包含一个选出的点。输出选择的点的最小数量。位于区间端点上的点也算作区间内。*/const int N = 100010;int n;struct Range{ int l, r; bool operator< (const Range &W)const { return r < W.r; }}range[N];int main(){ scanf("%d", &n); for (int i = 0; i < n; i ++ ) scanf("%d%d", &range[i].l, &range[i].r); sort(range, range + n); int res = 0, ed = - ...