自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

Stay Hungry,Stay Foolish

个人公众号【AttXZY】,知乎【阿谢】,个人博客【https://123xzy.github.io/】

  • 博客(32)
  • 收藏
  • 关注

原创 JVM内存

把内存管理交给虚拟机,但不可依赖于虚拟机的内存管理机制,这就是学习虚拟机的原因之一内存划分对象创建对象内存布局对象访问定位虚拟机将内存划分为以下几个部分程序计数器(PC):和计组中的概念一样,都是存放程序,或者说是进程要执行的下一条字节指令,每个线程都有自己私有的程序计数器栈:描述方法执行的内存模型,每个方法在执行的时候都会创建一个栈帧,用于存放局部变量表、操作数帧、动态...

2018-12-28 16:08:37 138

原创 Javaweb入门

花了三个星期,从零开始学习Javaweb的搭建,并第一次上手一个框架,踩过了无数的坑,但收获还是很大看本文的读者最好有以下基础Java基础对HTTP和HTML有所了解Linux基本操作对web运作流程有了解数据库,如MySQL当然如果不了解也没事,和我一样头铁就是干!先申明这次开发所用的环境(包括版本信息),这真的很重要,因为我第一次在云服务器上部署tomcat时,所安装的...

2018-12-25 16:58:24 231

原创 几点感悟

今天在YouTube上看到一个清华留学生的视频,对我触动挺大的。一个十九岁的清华学子,已经能通过制作视频月收入五位数,然后再对比自己,我觉得从那个视频中体现的最大的区别在于执行力和洞察力在这个视频中,他讲了一个在经营频道初期做出的一个重要决定,从做自己喜欢的物理教学内容,到做用户喜欢的内容,他洞悉到了频道前期subscriber增长较慢的最关键的原因。让用户参与进来,是这个YouTuber反...

2018-12-22 13:20:43 708 2

原创 指针与数组

指针以更接近机器的方式表示地址,所以会更有效率一个贯穿指针与数组的概念:数组名是数组首元素的地址首先是指针的概念: int* p; //定义一个指向int的指针 int n = 3; p = &n; //赋值 printf("p=%x\n&p=%x\n*p=%d\n&n=%x\nn=%d",p,&p,*p,&n,n ); p=

2018-01-23 21:52:28 165

原创 《算法》Ex_1.1

不知道是我太笨还是《算法》的作者脑洞大开,在第一章就看到了好多很妙的函数1.之前看到的斐波那契数列都是递推给出的f[n]=f[n-1]+f[n-2];这次看到了一个代码还是挺有趣的int f=0;//保存当前数int g=0;//保存前一个数for(int i=0;i15;i++){ printf("%d",f); f=f+g; g=f-g;

2018-01-21 18:27:41 242

原创 Bomb_phase1_CSAPP_lab

啃完了CSAPP的前四章,但是怎么能停在只是坑完了呢,当然要做配套的经典Lab这次做实验把学到的都用起来了解决easy

2018-01-19 23:13:02 150

原创 Git初学

作为一个立志要成为优秀程序员的人,怎么可以不知道怎么使用git之前使用的是github,但是感觉目前用处不大,用的还是github桌面应用,不够高大上(装逼)第一步:安装git,简直就是傻瓜式安装,略过第二步:先创建git_practice文件夹作为示范,里面有一个hello_world.py第三步:从示范文件进入Git Bash 第四步:就是各种操作1 git init

2018-01-18 21:25:16 172

原创 《算法》(第四版)Eclipse配置

接下来的计划就是看《算法》,并实现上面的代码Eclipse的安装网上有很多教程,很容易就配置成功,但引入《算法》作者写的库还是有点头疼首先需要下载两个文件 algs4.jar 和 algs4-date.zip,第二个文件是书本上所有的测试数据然后需要把它引入创建的工程,参考如下 还需要在代码中引入import java.util.Arrays;import edu.pr

2018-01-17 21:58:58 1900

原创 初识Java

从C语言转到Java,最重要的就是理解面对对象的含义首先说一句哲学性的话:万物皆是对象。花花草草、猫、狗、手机、电脑都可以成为对象。对象有两个属性:状态和行为,当这些对象具有某些相同属性的时候,比如花花草草都具有植物的属性,猫狗都具有动物的属性,这时候,我们就可以抽象出类各个概念,反过来想,我如果是老虎,我也应该有动物的属性,“应该有”这个过程就可以说是继承。面对对象编程的适应性和可扩

2018-01-07 19:17:05 120

原创 linux gcc gdb

这个星期作死的想要在linux下写c代码,结果花了大半天,不过还是很有收获的,至少以后可以在linux下写代码了,还有CSAPP上的案例也就可以动手操作了,哈哈哈之前都是在CSAPP上看的汇编代码,今天终于看到了“真人”了。还是总结一下这次烦人的操作因为看书的时候,经常会看到gdb调试,就一直都想实验一下,但是windows安装实在烦人首先是安装虚拟机,这步倒是很顺利;安装linu

2018-01-06 20:24:08 177

原创 UVA514(Rails)

UVA514 学完栈的知识后,第一次运用,也是第一次知道有现成的stack这是《算法竞赛入门经典》上的题目,但是书上的代码是过不了的,主要是输入输出的格式不对,但是思路是ok的根据题目意思描述,辅助铁轨C只能先进后出,符合栈的特性进入的火车要么进入C,要么直接出去 出去的火车要么从C出去,要么从A出去还有火车从C栈驶出之前,要判断栈是否为空,不然是会出错的#include

2018-01-06 17:44:46 163

原创 对弧度的重新认识

高中学习弧度,老师就是一笔带过,这次在学习高等数学的时候,对弧度的认识还有些模糊,就借鉴了知乎上的马同学数学大佬,总结了这篇文章先讲讲角度的来源:春分到秋分,以其他星座为参考,太阳划过半个周天的轨迹,恰好等于180个太阳直径,受此启发,他们定义圆周为360度,平角为180度。因此角度的符号是小圈(代表太阳),而不是其他符号 此外,定义平角为180度,还与巴比伦人采用60进位法有密切的联系,并且18

2018-01-02 09:20:40 360

原创 2017总结

现在是2017年12月31日22:37,我在电脑面前写下这段文字17年,对自己来说,是个分水岭,上半年是水深火热,下半年是天上人间。上半年经过高考的洗礼,学到了最关键的一点,坚持。下半年初入大学,体验到了不一样的生活这一年最重要的莫过于高考,高考前的紧张,高考后没有想象中的狂欢,只是平淡的填完志愿,两个月的暑假现在看来过得好无趣,只是学习了C语言,一个人出去溜了一圈,然后就来到了大学,来到

2017-12-31 22:53:51 129

原创 GitHub简单使用

花了一上午终于搞明白了github是怎么一回事,本文的唯一目的就是讲明白怎么把本地的程序传到云端(不需要任何技术手段,小白也可以实现)首先明白一点,github有一个很重要的概念Repository,在本地有一个,在云端也有一个(云端的Repository是可以被其他用户clone),还有一个操作是把本地的Repository中的某个文件传到云端的Repository,这样其他人(包括自己)就可以在

2017-12-30 12:43:33 238

转载 人工智能

人工智能“六步走”学习路线1、学习并掌握一些数学知识高等数学是基础中的基础,一切理工科都需要这个打底,数据挖掘、人工智能、模式识别此类跟数据打交道的又尤其需要多元微积分运算基础线性代数很重要,一般来说线性模型是你最先要考虑的模型,加上很可能要处理多维数据,你需要用线性代数来简洁清晰的描述问题,为分析求解奠定基础概率论、数理统计、随机过程更是少不了,涉及数据的问题,不确定性几乎是不可避免的,

2017-12-28 07:25:56 466

原创 HDOJ2899(二分\三分)

题目连接 一道很水的题目,硬是被我做成有毒的题目 先讲二分法 这种多次函数照理来说是不能用二分法的(因为一般来说函数不是单调的),但是这个函数的导函数在给定(0,100)区间是单调的,所以就可以以利用二分法去找导数等于零的点,也就是要找的极小值点#include#include#includeusing namespace std;#define flag 1e-6doub

2017-12-27 21:49:12 313

原创 HDOJ1010(DFS)

题目连接这是最初的代码,没有经过剪枝,自然TLE,DFS很大的一个特点就是要搜遍全图,很耗时间,如果你按F10去一步步调试,将会按到天昏地暗(我就是这么做的),它会把每个能到达的节点都做一遍DFS,不过没关系,先理解最初始的代码,理解了再去剪枝#include<iostream>using namespace std;int si, sj,ei, ej,n,m,flag,t;char map[

2017-12-26 17:08:42 184

原创 UVA572(Oil Deposits)(DFS)

题目链接第一次做DFS的题目,还一次AC了,开心#includeusing namespace std;#define MAXN 105char map[MAXN][MAXN];int m,n;int dir[8][2] = { { 0,-1 },{ 0,1 },{ 1,0 },{ -1,0 },{-1,-1},{-1,1},{1,-1},{1,1} };//因为题目意思是斜

2017-12-26 12:06:50 137

原创 影碟管理系统(程序设计课大作业)

第一次接触稍大一点的程序,纪念一下本来是和同学一起完成的,但他们好像积极性不高,就自己写了orz程序的结构借鉴了C primer plus 的面对对象的设计思路,但感觉只是学了点表面,面对对象的本质还没抓到,大家凑合看看,要是想借鉴,记得和我说一下,毕竟辛辛苦苦写的hhhh我是在VS2017上编译运行的,有三个文件,要一起编译哦,涉及到的只是还是很简单的,结构体,文件操作,链表(但是我

2017-12-24 16:20:05 1883 3

原创 UVA227

一道我目前为止写过的最长代码的题,小小纪念一下,思路很简单,就是模拟,但是他的输出格式,我不是很明白,是复制网友代码然后发现的规律。代码很简单,应该可以看懂,orz#include#includeusing namespace std;char s[6][6];struct blank{ int row;//行 int col;//列}blank;int in

2017-12-07 23:02:08 299

原创 HDOJ1325

HDOJ1325 乍一看并查集啊,native,结果WA, ORZ

2017-12-04 20:58:33 193

原创 HD1233最小生成树

HDOJ1233\#include#include#includeusing namespace std;#define M 10005 struct node { //定义边的结构体,包含边的起始城市,结束城市,路的距离 int start; int end; int dis;}edge[10005];int disjoint[M];

2017-12-03 11:45:40 531

原创 HD1232并查集(disjoint)

HDOJ1232 不瞒大家,这题提交了十几遍,一道简单的并查集,硬是被我做成了一坨屎,orz,还是自己没有真正理解并查集的意思,导致自己翻车了2333#includeint city[1002];int find(int x) { int temp=x; while(city[temp] != temp) //一定是while不能是if,是寻找根节点,不是父节点

2017-12-03 11:44:28 213

原创 UVA455

UVA455(笨脑子很难抽象的去想问题,这道题也是,要多加练习) 我的思路:从第一个元素开始,在遇到相同元素,就暂且把这个元素的序列作为最小周期,在循环判断,是否是循环数列,如果不是就退出,并找出下一个符合的最小周期,直到最后都没有退出,则输出这个最小周期。 总结:我的思路总是一步一步进行,但我看到大佬的博客,说的就很简洁:枚举循环节(循环节要能被字符串长度整除),进行循环判断,找到第一组

2017-11-27 16:13:54 1911 1

原创 HDUOJ1215(筛选、打表)

HDOJ1215

2017-11-16 22:23:20 285

原创 指针与字符串

1.先来看一个程序:char flower[10] = "roses"; //数组char *s = "red"; //从这里看出"red"实际是一个地址,并将地址赋给了指针scout " are "//" are "作为字符串常量运行结果: cout对象一个是数组名flower,一个是字符串常量“s are red” 首先需要知道的是数组名是一

2017-11-15 18:56:10 394

原创 HDUOJ1421(DP)

ACM1421 又是动态规划的题目,dp方面问题对现阶段的自己还是一个坎,还是要多理解多刷题。 首先从简单的数塔入手,从第一行开始走,走到最后一行,怎么使经过的值之和最大?dp问题的核心:找到状态并建立状态转移方程首先需要建立一个数塔模型,模型中的元素用a(i,j)(j<=i)表示,如第三行第二个元素10用a(3,2)表示。并且我们规定从a(i,j)往下走所能得到的最大值为dp(i,j)。 我

2017-11-14 16:08:13 292

原创 小结(时常更新)

进入大学已经有几个月了,过得很充实,但依旧存在问题,需要停下来总结。 可能是目标太明确,导致自己急于求成。自己很想进ACM集训队,看到身边的同学什么都会,已经领先自己很多,就逼迫自己去学更多的知识,但是会发现很多东西对于现阶段的自己来说并不能理解,比如说算法导论,想说给自己定一个目标在大一把这本书啃完,但是看过才发现很多东西自己很难理解。现阶段的自己要调整学习思路(均按学习顺序排列)非专业技...

2017-11-12 13:11:26 283

原创 HDUOJ1176(DP)

ACM1176 作为一个弱鸡,这道题目花了我很长的时间orz,首先花了很长的时间去理解这道题其实和数塔(ACM2084)实质其实一模一样,甚至连代码都差不多orz

2017-11-07 17:21:12 262

原创 HDUOJ1297/1002(大数计算)

ACM1297第一次做这道题的时候,以为就是一个简单的递推题,但还是too native,结果自然是WA,后来测试发现题目给的范围是1~1000,但是取100数据就会溢出(即便使用的是long long),因此需要使用大数计算。先简单的分析这题的递推公式:用f(n)表示排队种类,假定已知f(n-1) 第n个是男生,则有f(n-1)种可能 第n个是女生,首先需要明确要使f(n)要合法,那么第n-1

2017-11-06 22:29:48 244

原创 由一道关于位运算的程序设计题引发的思考

由一道关于位运算的程序设计题引发的思考因为位运算直接在内存中直接操作,所以具有高效性,如果能掌握一些简单的位运算,将对自己写的程序起到画龙点睛的作用。首先需要了解位运算符号及其作用: 运算符 举例 作用 按位与(&) 1000&1011==10011 判断整数的奇偶性 按位或(|) 00101|11100==11101 无 左移(<<) 右移(>

2017-11-06 21:45:35 216

原创 C语言第一课

对计算机工作原理的理解:电子元件还有两种工作状态,即高低电压,分别用0或1来表示,于是产生了二进制。进位计数制有二进制、八进制、十进制、十六进制等。基本概念有数码、基数、位权。1.数制之间的转换:十进制→二、八、十六进制:整数部分除以R取余法;小数部分乘以R取整法。例如将(114.35)10转化成二进制数,误差不超过10进制数的0.1,即为1110010.0101(知识网路

2017-08-23 13:21:05 710

空空如也

空空如也

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

TA关注的人

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