- 博客(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
原创 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
原创 指针与字符串
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关注的人