java入门要注意什么
学习java就像是一个种花的过程,不断地为其施肥浇水,它才会茁壮成长。 而我们学习java,就要不断的充实自己、提升自己,才能获得更多机会。很多开始学习java编程的小白,经常就会被概念、定义什么的搞糊涂。当分类 、对象、接口、构造函数等等各种专业名词出现的时候,你一定是脑子里好像一片空白,根本就搞不懂这些字眼的意思和关系,而且,这种情况下,很 容易导致你丧失自信心,开始逃避、拒绝,这些小白经常遇到的情况在我刚接触java的时候也遇见了,但是好在我足够幸运,遇见了诚筑说。我现在已 经是公司的项目经理了,今天,我为大家来总结了一些经验和建议,希望能够帮助到大家。
一点:熟练基本的j2seAPI
除去java语言本身的语法之外呢,要懂得并且熟练j2seAPI的API也是非常有 必要的,在这里,就建议大家首先去掌握字符串的处理、异常的处理、容器、输入输出、线程等,这些相对来说较为重要的。还有就是API的内容是非 常庞大的,关于API,一定要懂得查询API的文件说明,在了解了其作用用途或者目的才能够进行相对于的程序。
二点:稳固java的语法基础
学习java一定要学会使用java的程序语言,用来编写程序,但是学习程序语 言就要熟悉语法是怎么使用的。程序语言其实也是一种语言,不过跟人类的语言不同,这种语言是要和计算机沟通交流,那怎么做才能熟悉这种语言呢 ,我给出的建议是多看别人写的程序,了解人家是怎么用java来解决问题的。然后再找类似的程序去练习了,这样就能够从实际操作中检验自己是否真 的知道该怎么去解决问题了。
三点:加入贴吧论坛多参与讨论
根据我当时的经验,在大家学习的过程中,如果有人可以参与话题,共同讨 论的话,会加快你学习的速度。所以大家可以和我一样,找一个技术讨论的地方,贴吧啊,论坛啊都可以,在这里进行讨论,毕竟大家有着共同的目标 和理想,有着共同的话题可聊,这样的话,又大大节省了学习的时间。
学完基本的java语法呢,现在就该用java来进行实际的编程了,假如你需要 编写窗口程序,那就学Swing窗口设计;假如你要编写数据库什么的,那就学JDBC等等。
Java编程语言概述
Java编程语言概述
1.Java编程语言发展简史
2.Java编程语言主要特征
3.Java技术体系平台
4.Java核心机制与JVM运行原理
5.搭建 Java开发环境
6.JDK 的安装与配置
7.开发体验 Java 应用程序
8.Java 程序的执行原理
9.Java Code Style
10.变量的声明与使用
11.变量内存空间分配与原理
12.进制与位运算
13.变量的数据类型
14.数据类型之间的转换
15.变量的运算与底层运算原理
洛谷_P1056 排座椅
>
题目描述
上课的时候总会有一些同学和前后左右的人交头接耳,这是令小学班主任十分头疼的一件事情。不过,班主任小雪发现了一些有趣的现象,当同学们的座次确定下来之后,只有有限的D对同学上课时会交头接耳。同学们在教室中坐成了M行N列,坐在第i行第j列的同学的位置是(i,j),为了方便同学们进出,在教室中设置了K条横向的通道,L条纵向的通道。于是,聪明的小雪想到了一个办法,或许可以减少上课时学生交头接耳的问题:她打算重新摆放桌椅,改变同学们桌椅间通道的位置,因为如果一条通道隔开了两个会交头接耳的同学,那么他们就不会交头接耳了。 请你帮忙给小雪编写一个程序,给出**好的通道划分方案。在该方案下,上课时交头接耳的学生的对数**少。输入格式:
输入文件seat.in的**行,有5个用空格隔开的整数,分别是M,N,K,L,D(2<=N,M<=1000,0<=K<M,0<=L<N,D<=2000)。 接下来的D行,每行有4个用空格隔开的整数。第i行的4个整数Xi,Yi,Pi,Qi,表示坐在位置(Xi,Yi)与(Pi,Qi)的两个同学会交头接耳(输入保证他们前后相邻或者左右相邻)。 输入数据保证**优方案的唯一性。输出格式:
输出文件seat.out共两行。 **行包含K个整数,a1,a2……aK,表示第a1行和a1 1行之间、第a2行和a2 1行之间、…、第aK行和第aK 1行之间要开辟通道,其中ai< ai 1,每两个整数之间用空格隔开(行尾没有空格)。 第二行包含L个整数,b1,b2……bL,表示第b1列和b1 1列之间、第b2列和b2 1列之间、…、第bL列和第bL 1列之间要开辟通道,其中bi< bi 1,每两个整数之间用空格隔开(列尾没有空格)。题解:
使用结构体标记x,y轴,然后在读入每一对同学时,如果他们x轴相同就放在一个组,y轴相同放在另一个组,然后把对应的数组的值 1。 (对于x轴和y轴,某一条无论怎么分割对其他的分割线都没有影响。) 然后对读入后这两个结构体的值降序排序,取前k和前l个的位置坐标输出即可,可以证明这是**优的思路。代码:
var s,d,f,g,h,j,z:longint; a:array[1..3000,1..5] of integer; a1:array[1..3000,1..5] of integer; m,n,k,l,i:integer; begin read(m,n,k,l,i); z:=0; j:=0; for s:=1 to i do begin read(d,f,g,h); if d=g then begin z:=z 1; if f<h then begin a[z,1]:=f; a[z,2]:=h; a[z,5]:=d; end else begin a[z,1]:=h; a[z,2]:=f; a[z,5]:=d end; end; if f=h then begin j:=j 1; if d<g then begin a1[j,1]:=d; a1[j,2]:=g; a1[j,5]:=f; end else begin a1[j,1]:=g; a1[j,2]:=d; a1[j,5]:=f; end; end; end; for s:=1 to j do if a1[s,3]=0 then begin a1[s,3]:=1; a1[s,4]:=a1[s,4] 1; for d:=s 1 to j do if (a1[s,1]=a1[d,1]) and (a1[s,2]=a1[d,2]) then begin a1[d,3]:=1; a1[s,4]:=a1[s,4] 1; end; end; for s:=1 to j-1 do for d:=s 1 to j do if a1[s,4]<a1[d,4] then for f:=1 to 5 do begin g:=a1[s,f]; a1[s,f]:=a1[d,f]; a1[d,f]:=g; end; for s:=1 to k-1 do for d:=s 1 to k do if a1[s,1]>a1[d,1] then for f:=1 to 5 do begin g:=a1[s,f]; a1[s,f]:=a1[d,f]; a1[d,f]:=g; end; for s:=1 to k do write(a1[s,1], ); writeln; for s:=1 to z do if a[s,3]=0 then begin a[s,3]:=1; a[s,4]:=a[s,4] 1; for d:=s 1 to z do if (a[s,1]=a[d,1]) and (a[s,2]=a[d,2]) then begin a[d,3]:=1; a[s,4]:=a[s,4] 1; end; end; for s:=1 to z-1 do for d:=s 1 to z do if a[s,4]<a[d,4] then for f:=1 to 5 do begin g:=a[s,f]; a[s,f]:=a[d,f]; a[d,f]:=g; end; for s:=1 to l-1 do for d:=s 1 to l do if a[s,1]>a[d,1] then for f:=1 to 5 do begin g:=a[s,f]; a[s,f]:=a[d,f]; a[d,f]:=g; end; for s:=1 to l do write(a[s,1], ); end.
相关推荐: