自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(91)
  • 资源 (10)
  • 收藏
  • 关注

原创 清华大学计算机跨考攻略

报考哪一所学校?公共课912专业课数据结构计算机组成操作系统计算机网络报考哪一所学校?收集考研报考学校信息,主要包括考试科目、推荐教材、历年招生人数、复试名单、分数线端正心态:选学校不要硬刚,要考虑自己和学校的平衡,努力能够着那种。千万不要迷信自己努力可以改变一切。研招网->硕士目录,拓宽你选择院校的思路目标院校的夏令营要及时关注公共课多看经验贴...

2019-10-31 21:22:15 1094

原创 Datawhale 组队学习:零基础入门金融风控-贷款违约预测

贷款违约预测本次的问题是一个分类问题,给出特征,然后预测是否违约。首先考虑传统的机器学习方法,后期会测试IGBT和XGBoost等方法,然后再考虑人工构建其他特征,最后考虑模型融合以求达到更好效果。...

2020-09-15 23:46:36 1110 1

原创 科研之困:如何才能发论文呢?

转眼间,开学已近半年,但是自己的水平却没有太多的提升,很多同学早就进入了科研状态,自己也跃跃欲试,却力不从心。能做的只是静下心来,不断积累,提高效率,不断的向身边的同学学习。希望尽快自己也能在行业中不那么小白!!...

2019-11-28 16:29:20 195

原创 做好程序员心得:向计算机学并行

并行在学习计算机组成原理的时候,我们知道并行有效的提高计算机的运行速度,有些程序是高cpu的,而另一些是高io的,不同的程序以进行的形式存在,就可以提高计算机的整体处理速度。这个过程中关键是在不同程序的切换过程中,保存好程序的最后信息。工作和学习并行的概念在程序员的工作中比其他工作显得更加重要,经常因为下载一个东西太慢,一个任务无法继续进行下去,这时候,没有并行,而是单纯的等待下载完成,则...

2019-11-18 14:51:28 329

原创 1237. 找出给定方程的正整数解

自己的解法也是基于二分,本以为会快很多,其实却很慢。和最快的答案不同的地方就在于自己时二维二分,而答案是对每一列分别二分。/* * // This is the custom function interface. * // You should not implement it, or speculate about its implementation * class CustomFu...

2019-10-31 21:26:21 179

转载 [翻译]MapReduce: Simplified Data Processing on Large Clusters

MapReduce: Simplified Data Processing on Large ClustersMapReduce:面向大型集群的简化数据处理摘要MapReduce既是一种编程模型,也是一种与之关联的、用于处理和产生大数据集的实现。用户要特化一个map程序去处理key/value对,并产生中间key/value对的集合,以及一个reduce程序去合并有着相同key的所有中...

2019-10-09 21:27:33 149

原创 研究生学生骨干要求

开展工作的阻力:教授们的偏见、同学不理解 严厉打击不正之风: 官僚化、形式主义:层级森严、工作层层布置,对老师、学生干部的称呼,发言稿 规则意识与官僚主义的区别:财务意识 “青年要立志做大事,不要立志做大官” “你觉得自己吃亏了,别人看你正好” ...

2019-10-07 19:52:16 205

原创 5214. 最长定差子序列

动态规划:用dp[i]表示以i结尾的数字的最长定差子序列的长度,由于数字的范围有限,所以采用数组和偏移来实现,也可以用map实现。class Solution {public: int longestSubsequence(vector<int>& arr, int difference) { vector<int> dp(20005,...

2019-10-06 16:31:38 240

原创 1103. 二叉树寻路

先用完全二叉树找到最初的路径,然后再分奇数和偶数行分别处理找到变换之后的数字。class Solution {public: vector<int> pathInZigZagTree(int label) { vector<int> v,ans; int len = 0; while((1<<len)&...

2019-06-30 14:50:03 243

原创 1091. 二进制矩阵中的最短路径

BFS队列即可class Solution {public: int shortestPathBinaryMatrix(vector<vector<int>>& grid) { int m=grid.size()-1,n=grid[0].size()-1; int xx[8]={0,1,1,1,0,-1,-1,-1},y...

2019-06-16 17:23:23 366

原创 5077. 按列翻转得到最大值等行数

//统计该行出现的次数,然后有多少行的模式形同,模式相同分为两种情况,可能是反转后全为0或者全为1class Solution {public: int maxEqualRowsAfterFlips(vector<vector<int>>& matrix) { map<string,int> tmap; int...

2019-06-04 16:20:57 224

原创 5076. 字符串的最大公因子

class Solution {public: //类比辗转相除法 //gcd(a,b){return a%b==0?b:gcd(b,a%b);} string gcdOfStrings(string str1, string str2) { if(str1==str2)return str1; if(str1.size()<str2...

2019-06-04 15:43:59 277

原创 1049. 最后一块石头的重量 II

问题可以转换为分成两堆,然后两堆之差的最小值为多少。我们可以将此问题化为01背包问题,共30个不到的物品,总的重量作为背包的大小,具体见代码。class Solution{public: int lastStoneWeightII(vector<int>& A){ //01背包问题 int sum = accumulate(A.beg...

2019-05-20 14:25:18 525

转载 用telnet实践HTTP

网络进程通信“一切皆Socket!”话虽些许夸张,但是事实也是,现在的网络编程几乎都是用的socket。本地进程通信可以用进程PID来唯一标示,网络进程通信也需要一个唯一标示,网络层的“ip地址”可以唯一标识网络中的主机,而传输层的“协议+端口”可以唯一标识主机中的应用程序(进程)。这样利用三元组(ip地址,协议,端口)就可以标识网络的进程了。socket介绍ocket起源于Unix,而U...

2019-04-26 17:22:18 509

转载 抓包工具wireshark和协议分析

简介Wireshark 是世界上最流行的网络分析工具。这个强大的工具可以捕捉网络中的数据,并为用户提供关于网络和上层协议的各种信息。与很多其他网络工具一样,wireshark 也使用pcap network library 来进行封包捕捉。Wireshark使用WinPCAP作为接口,直接与网卡进行数据报文交换。不安装的话无法不抓网络流量。为了安全考虑,wireshark只能查看封包,而不能修...

2019-04-26 17:18:50 596

转载 网络模拟器Cisco Packet Tracer和eNSP

简介:Cisco Packet Tracer是Cisco公司发布的一个辅助学习工具,为学习思科网络课程的初学者去设计、配置、排除网络故障提供了网络模拟环境。用户可以在软件的图形用户界面上直接使用拖曳方法建立网络拓扑,并可提供数据包在网络中行进的详细处理过程,观察网络实时运行情况。可以学习IOS的配置、锻炼故障排查能力。CCNA认证 (思科认证网络工程师) 表示具备基本的和初步的网络知识。拥有CC...

2019-04-26 17:17:22 3820

原创 1028. 负二进制转换

思路:采取从高位到低位的顺序,分别对每一个奇数位进行修复处理,通过例子分析,可以看成,当该奇数位为1时才需要修复,当其高位为0时,只需要将其高位置1即可。当其高位为1时,根据其更高位采用不同的方法。其更高位为1时,只需要同时将其高位和更高位置0即可;其更高位为0时,同时将其高位和更高位取反后,修复上溢,对其跟高位进行修复。代码如下:class Solution {public: vo...

2019-03-31 17:28:27 326

原创 1021. 最佳观光组合

解题思路:暴力方法会超时,要将复杂度降到O(N),即一次遍历。首先令i=0;然后随着j往后遍历,要在这个过程中更新i的值。具体代码如下:class Solution {public: int maxScoreSightseeingPair(vector<int>& A) { int res=-1; int max_i=A[0]+0;...

2019-03-26 23:28:06 437

原创 1022. 可被 K 整除的最小整数

方法解析:本题采用模拟的方法,难点在于为什么模拟到K个1就可以停止模拟了呢?需要证明其中的循环特点。可以这样考虑,对于K来说,其余数至多有0到K-1共K个,如果K次尝试不成功的话,必然产生循环,后面的尝试就无用了。也可以用出现余数的次数来进行剪枝,如果是第二次出现相同的余数,则可终止循环。不过,这样剪枝的代价是增加了空间复杂度。代码如下:class Solution {public: ...

2019-03-26 22:50:45 214

原创 991. 坏了的计算器

思路:与其对X进行操作,不如转换思路,对Y进行操作,代码很简单,请看。class Solution { public static int brokenCalc(int X, int Y) { int cnt=0; while(X!=Y){ if(X&gt;Y){ cnt+=X-Y; ...

2019-02-10 11:45:15 571

原创 974. 和可被 K 整除的子数组

//总体思路:动态规划/* 用sum[i]记录A[0]-A[i]的和,将余数的个数记录到v数组当中,如果某个余数的个数有k个,则对应的和是K的倍数的子数组的个数是k*(k-1)/2个。*/int subarraysDivByK(vector&lt;int&gt;&amp; A, int K) { int cnt=0,sum=0; vector&lt;int&gt; v(K,0); f...

2019-01-13 20:39:38 345

原创 201803-4 棋局评估

请问我写的这个最大最小搜索是哪里不对呢?样例都能过,时间空间都不超,为什么提交是0分呢?#include&amp;lt;cstdio&amp;gt;#include&amp;lt;iostream&amp;gt;#include&amp;lt;set&amp;gt;#include&amp;lt;vector&amp;gt;#include&amp;lt;queue&amp;gt;#include&am

2018-09-11 22:24:01 307

原创 902. 最大为 N 的数字组合

思路:数学方法,先将数字存入numD,记录exp[i]=rank^i,dp[i]表示D中有几个数字小于num[i],vis[i]表示D中有数字等于num[i]class Solution {public: int atMostNGivenDigitSet(vector&lt;string&gt;&amp; D, int N) { int sum=0,t=N,R=1,r...

2018-09-09 11:32:36 887

原创 901. 股票价格跨度

思路:迭代求解class StockSpanner {public: vector&lt;int&gt; v,dp; StockSpanner() { v.push_back(0x7fffffff); dp.push_back(1); } int next(int price) { v.push_back(p...

2018-09-09 11:30:14 365

原创 900. RLE 迭代器

思路:递归求解class RLEIterator {public: vector&lt;int&gt; dp; int len,lo; RLEIterator(vector&lt;int&gt; A) { len=A.size();lo=0; for(int i=0;i&lt;len;i++)dp.push_back(A[i]); ...

2018-09-09 11:28:32 200

原创 1151 LCA in a Binary Tree(30 分)

此题还是比较简单的,根据中序后续建立二叉树,然后DFS查找节点即可#include&amp;lt;cstdio&amp;gt;#include&amp;lt;iostream&amp;gt;#include&amp;lt;cstring&amp;gt;#include&amp;lt;string&amp;gt;#include&amp;lt;vector&amp;gt;#include&amp;lt;m

2018-09-08 23:31:03 312

原创 5-1Where is the Marble

思路:二分查找,用STL中的lower_bound则代码更加简洁#include&lt;iostream&gt;#include&lt;vector&gt;#include&lt;algorithm&gt;using namespace std;#define _for(i,lo,hi) for(int i=(lo);i&lt;(hi);i++)int getint(){int...

2018-09-06 21:29:31 106

原创 401. 二进制手表

典型回溯法。需要注意ss+(1&lt;&lt;step)&lt;60,&lt;&lt;移位运算的优先级不如加法class Solution {public: int N=10; vector&lt;string&gt; ans; void solve(int step,int mm,int ss,int num,int cnt){ if(s...

2018-09-03 11:26:34 215

原创 51. N皇后

典型试探回溯法class Solution {public: vector&lt;vector&lt;int&gt; &gt; ans; vector&lt;vector&lt;string&gt; &gt; strans; vector&lt;int&gt; tmp; vector&lt;bool&gt; vis; bool confli...

2018-09-03 10:12:17 93

原创 169. 求众数 && 229. 求众数 II

不限定时间复杂度的话,很多人会先排序,再遍历的方法来做。不限定空间复杂度的话,很多人会用hash表来做。那么,有了这两个限定,就只能用摩尔投票算法了。主元素问题典型解法。摩尔投票算法:时间复杂度O(n),空间复杂度O(1)169class Solution {public: int majorityElement(vector&lt;int&gt;&amp; nums...

2018-09-02 19:02:34 574

原创 B1048 数字加密(20 分)

题意写的根本就不清楚啊,要把AB短的地方都当做0处理才对#include&lt;iostream&gt;#include&lt;algorithm&gt;#include&lt;string&gt;#include&lt;cstring&gt;#include&lt;vector&gt;#include&lt;map&gt;using namespace std;#d...

2018-09-02 15:35:02 364 1

原创 899. 有序队列

当k&gt;1时,相当于冒泡排序,因为任意两个相邻数据都可以在头部交换顺序到尾部。/当k==1时,遍历所有可能结果class Solution {public: string orderlyQueue(string S, int K) { if (K&gt;1){ sort(S.begin(),S.end()); ...

2018-09-02 13:12:29 500

原创 898. 子数组按位或操作

/*非常好的dp题目dp[i][j]表示A[i]|..|A[j]的值如果直接Dp的话,O(N^2),会超时注意到每一行最多有30个不同的值,所以存在大量的重复,如果每一行的值是在上一行的值之上进行更新,每一行的值的个数均小于30个,就可以保证复杂度是O(30N)第i行表示以i结尾的所有的连续子序列和的或值的个数,则第i+1行的值为i行的每一个结果与元素j或运算,再加上元素j本身。即:d...

2018-09-02 12:57:36 1437

原创 897. 递增顺序查找树

垃圾翻译,毁我青春 原题为:Given a tree, rearrange the tree in in-order so that the leftmost node in the tree is now the root of the tree, and every node has no left child and only 1 right child. 居然给翻译成了:...

2018-09-02 12:21:48 717

原创 131. 分割回文串

思路:首先构造dp数组,dp[i][j]表示i-j是回文串,然后DFS回溯法输出结果class Solution {public: vector&lt;string&gt; tmp; vector&lt;vector&lt;string&gt;&gt; ans; void DFS(int lo,int hi,vector&lt;vector&lt;int&...

2018-08-30 11:19:29 298

原创 1038 Recover the Smallest Number (30)

思路: 按照字符串排序,重写cmp函数:str1+str2#include&lt;iostream&gt;#include&lt;string&gt;#include&lt;algorithm&gt;#include&lt;vector&gt;using namespace std;bool cmp(string&amp; str1,string&amp; str2){ ...

2018-08-29 15:37:59 80

原创 1067 Sort with Swap(0,*) (25)

思路:两种方法: 1.模拟交换,注意元素的存储是记录各个元素位置的方式 2.并查集:计算并查集的数目,注意分初试时0是否在原位置两个情况//方法一:模拟交换#include &lt;iostream&gt;#include&lt;algorithm&gt;#include&lt;vector&gt;using namespace std;int main() { //...

2018-08-29 15:25:46 195

原创 1033 To Fill or Not to Fill(25 分)

思路:关键在于贪心策略的选取 如果把终点也当做一个加油站处理,则代码可以简化很多贪心策略详细描述,遍历在当前站点所能达到的所有站点,分两种情况讨论: 0.寻找比自己距离远的,到能够到达的最大距离之间的加油站,看他们的油价。如果找到了更低价格的油价,就加油到刚好能到达那个加油站的距离的油,然后去那个更低价格的加油站(有更低的我一分都不想多花在别的距离上,只加到刚好满足更低价格的加油站的距离就...

2018-08-29 12:31:24 888

原创 1088 Rational Arithmetic(20 分)

思路:分数计算 注意:输出初始的分数的时候也要化成最简形式。#include&lt;iostream&gt;#include&lt;vector&gt;#include&lt;cstring&gt;#include&lt;string&gt;#include&lt;map&gt;#include&lt;algorithm&gt;#include&lt;ctime&gt;us

2018-08-29 08:52:18 698

原创 1143 Lowest Common Ancestor(30 分)

思路:因为是BST,所以排序后的节点序就是中序遍历,然后就可以根据中序遍历和先序遍历构造BST 然后就是找公共祖先了,首先排序节点不存在的情况 然后从根节点开始找,因为是BST,所以当两个节点分别属于左右两个分支时,即找到了最低公共祖先#include&lt;iostream&gt;#include&lt;vector&gt;#include&lt;cstring&gt;#inc...

2018-08-28 22:14:43 381

hashing.pdf

PDQ和TMK + PDQF:是我们在Facebook上用来检测有害内容的一系列工具的一部分,并且行业中还可以使用其他算法和实现,例如pHash,Microsoft的PhotoDNA,aHash和dHash。 这些技术创建了一种有效的方式来将文件存储为短数字哈希,即使没有原始图像或视频,也可以确定两个文件是相同还是相似。哈希也可以更容易地与其他公司和非营利组织共享。 PDQ和TMK + PDQF设计为可大规模运行,支持视频帧哈希和实时应用。我们根据检测Facebook数十亿条帖子中的滥用情况的经验设计了这些技术。

2019-12-03

清华大学专属ppt模版

清华大学校徽,翻开的书本创意封面,翻开的书籍创意元素,紫色配色,简约大气设计,适合于清华大学应届毕业生论文汇报、学术答辩的通用论文答辩ppt模板

2019-11-17

深度学习花书+笔记

内容简介《深度学习》由全球知名的三位专家Ian Goodfellow、Yoshua Bengio 和Aaron Courville撰写,是深度学习领域奠基性的**教材。全书的内容包括3个部分:第1部分介绍基本的数学工具和机器学习的概念,它们是深度学习的预备知识;第2部分系统深入地讲解现今已成熟的深度学习方法和技术;第3部分讨论某些具有前瞻性的方向和想法,它们被公认为是深度学习未来的研究重点。 《深度学习》适合各类读者阅读,包括相关专业的大学生或研究生,以及不具有机器学习或统计背景、但是想要快速补充深度学习知识,以便在实际产品或平台中应用的软件工程师。

2019-04-03

Effective Modern C++(中文版 + 英文版)

想要彻底理解C++11和C++14,不可止步于熟悉它们引入的语言特性(例如,auto型别推导、移动语义、lambda表达式以及并发支持)。挑战在于高效地运用这些特性——从而使你的软件具备正确性、高效率、可维护性和可移植性。这正是这本实用的图书意欲达成的定位。它描述的正是使用C++11和C++14——现代C++来撰写真正卓越的软件之道。 涵盖以下主题: 大括号初始化、noexcept规格、完美转发,以及智能指针的make函数的优缺点 std::move、std::forward、右值引用和万能引用之间的联系 撰写整洁、正确以及高效的lambda表达式的方法 std::atomic和volatile有怎样的区别,它们分别用于什么场合,以及它们和C++的并发API有何联系 “旧”C++程序设计(即C++98)中的最佳实践要求在现代C++的软件开发中作出哪些修订 《Effective Modern C++》沿用了Scott Meyers早期作品中业已证明的基于指导原则和实例驱动的格式,但介绍的是全新材料。本书是所有C++软件开发工程师的必读之选。

2019-04-03

模式识别第三版张学工(清华大学出版社)

张学工的模式识别(第三版),本书是清华大学自动化系国家精品课程“模式识别基础”的教材。

2019-04-03

《人工智能导论》林尧瑞.马少平

清华大学考研复试指定用书,复试必备。 《人工智能导论》主要讲述人工智能问题求解方法的一般性原理和基本思想,并简要介绍人工智能语言,知识表示方法以及几个应用领域中所涉及的人工智能问题。全书共十章,前五章是人工智能基本原理和方法的论述,后五章是人工智能技术应用中涉及的几个主要问题。

2019-02-18

[牛客网]十大名校考研复试上机

[牛客网]十大名校考研复试上机,包括清华、北大、浙大、北航、北邮、哈工大、华科、吉大、上交、西北工业十所学校

2019-01-26

清华大学912复试上机考试真题

包括清华大学06年-18年的上机考试试题真题,对于复试上机考试非常有帮助

2019-01-26

计算机组成与设计 硬件软件接口 第五版 答案

计算机组成与设计 硬件软件接口 第五版 答案 看了感觉还不错,所以分享下,本来想不要积分的,想下载的可以给我发邮箱ni-ys13@qq.com,我会发给你们的 有个不情之请,请关注一下我

2018-11-16

空空如也

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

TA关注的人

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