摘要:
class JavaTest4_String { public static void main(String[] args) { String str1 = "IOS,ANDROID,BB,PALNM,WP,SYBIAN"; String str2 = new String("Str2"); char[] arr = {'S','t','r','2'}; String str3 = new String(arr); String str4 = " Jue "; //长度 阅读全文
摘要:
一、Date类:这是一种过时的表达方式import java.util.Date; Date date = new Date(); System.out.println((1900+date.getYear()) + "年" + (1+date.getMonth()) + "月" + date.getDate() + "日"); System.out.println();执行结果:2013年7月16日二、Calendar类:Calendar是抽象类,不能newimport java.util.Calendar; Calendar c 阅读全文
摘要:
本系列文章由七十一雾央编写,转载请注明出处。http://blog.csdn.net/u011371356/article/details/9344721作者:七十一雾央 新浪微博:http://weibo.com/1689160943/profile?rightmod=1&wvr=5&mod=personinfo 有同学提到无限大地图的问题并且举了无尽跑酷游戏的列子,雾央在这里简单的和大家说一下自己的看法: 雾央认为,像Temple Run这种游戏,它们的无尽地图的实现是依靠逻辑生成的,并不是使用的很大的地图文件。它的地图可以依靠几种有限的图元,然后经过拼接组合来生成。仔细观 阅读全文
摘要:
先占个坑 阅读全文
摘要:
一、邻接矩阵实现思路:如果是邻接矩阵存储,设邻接矩阵为A,则A*A即为平方图,只需要矩阵相乘即可;伪代码:for i=1 to n for j=1 to n for k=1 to n result[i][j]+=matrix[i][k]*matrix[k][j];算法复杂度两个n维数组相乘,因此复杂度为O(V^3),当然可以通过Strassen算法稍加改进.扩展:这种方法的作用是比如求u到v路径长度为k的路径数目,只需要求A^k,然后[u][v]即可。算法正确性分析命题:给定两点i,j,i,j路径长度为r的路径数目等于A^r[i][j].数学归纳法证明,当n=1时,A[i][j]表... 阅读全文
摘要:
思路:重开一个新图,按着邻接列表的顺序从上到下遍历,每遍历一行链表前,清空visited数组,如果没有访问过这个元素,则加入新图,如果已经访问过了(重边),则不动。伪代码:复杂度:O(V+E)for each u 属于 Vertex visited[u] = false;
for u 属于 Vertex visited[u] = true; for v 属于 Adj[u] if(!visited[v]) Adj1[u].insert(v); visited[v] = true; for v 属于 Adj[u] visited[v]=fals... 阅读全文
摘要:
一、邻接表实现思路:一边遍历,一边倒置边,并添加到新的图中邻接表实现伪代码:for each u 属于 Vertex for v 属于 Adj[u] Adj1[v].insert(u);复杂度:O(V+E);输入:3 3
a b
b c
c a源代码:package C22; import java.util.Iterator; public class C1_3{ public static Adjacent_List getTransposeGraph(Adjacent_List g){ Adjacent_List Gt = new Adjacent_List(g.get... 阅读全文
摘要:
链表如图:矩阵: 1 2 3 4 5 6 7
1 0 1 1 0 0 0 0
2 1 0 0 1 1 0 0
3 1 0 0 0 0 1 1
4 0 1 0 0 0 0 0
5 0 1 0 0 0 0 0
6 0 0 1 0 0 0 0
7 0 0 1 0 0 0 0(原文点此,索引目录。感谢xiazdong君 && Google酱。这里是偶尔做做搬运工的水果君(^_^) ) 阅读全文
摘要:
由于没有括号,只有+,-,++,--,优先级简单,所以处理起来很简单。题目要求计算表达式的值以及涉及到的变量的值。我这题使用stl的string进行实现,随便进行练手,用string的erase删掉全部空格,然后对++、--进行处理然后删去,最后就只剩简单式子了,简单循环下就出来了。这里有几个坑点:1.erase函数删除字符后,后面字符的下标都会发生变化,刚开始使用i++去检查空格,结果删除后会跳掉字符。2.++、--的后缀处理要注意,我开了两个数组放后缀运算的。3.输出的变量值是当前后自增后的数。唉,我发现我每次写stl,代码都很乱哪,果然缺欠练习呢。代码:#include #includ. 阅读全文
摘要:
题目很简单,给一个队列以及文件的位置,然后一个一个检查,如果第一个是优先级最高的就打印,否则放到队列后面,求所要打印的文件打印需要花费多长时间。这里我用数组模拟队列实现,考虑到最糟糕的情况,必须把数组开到maxn*maxn。另外当所要打印的文件优先级不是最高的时候也需要排列到后面。0.016s。代码:#include const int maxn = 101;
int t, n, m, time;
int q[maxn*maxn]; int print() { int front = 0, rear = n; while (1) { int max = q[front]; fo... 阅读全文