关于c++与java程序运行的效率困惑求解释
2014-07-11 16:11
246 查看
解决问题:浙大pat basic level 1021题.个位数统计
给定一个k位整数N = dk-1*10k-1 +
... + d1*101 +
d0 (0<=di<=9,
i=0,...,k-1, dk-1>0),请编写程序统计每种不同的个位数字出现的次数。例如:给定N
= 100311,则有2个0,3个1,和1个3。
输入格式:每个输入包含1个测试用例,即一个不超过1000位的正整数N。
输出格式:对N中每一种不同的个位数字,以D:M的格式在一行中输出该位数字D及其在N中出现的次数M。要求按D的升序输出。
输入样例:100311
输出样例:
0:2
1:3
3:1
一、c++和java实现的测试结果
对比两个发现C++的用时和内存占用率都要远远优于java,但是两者实现的思路都是一样的。
求大神解释下原因,妹子感激不尽呀!!!
源代码如下
给定一个k位整数N = dk-1*10k-1 +
... + d1*101 +
d0 (0<=di<=9,
i=0,...,k-1, dk-1>0),请编写程序统计每种不同的个位数字出现的次数。例如:给定N
= 100311,则有2个0,3个1,和1个3。
输入格式:每个输入包含1个测试用例,即一个不超过1000位的正整数N。
输出格式:对N中每一种不同的个位数字,以D:M的格式在一行中输出该位数字D及其在N中出现的次数M。要求按D的升序输出。
输入样例:100311
输出样例:
0:2
1:3
3:1
一、c++和java实现的测试结果
对比两个发现C++的用时和内存占用率都要远远优于java,但是两者实现的思路都是一样的。
求大神解释下原因,妹子感激不尽呀!!!
源代码如下
import java.util.Scanner; public class Main { public static void main(String[] args) { int b[]=new int[10]; Scanner scan=new Scanner(System.in); String ss=scan.nextLine(); char[] c=ss.toCharArray(); for (int i = 0; i < c.length; i++) { int s=c[i]-'0'; b[s]+=1; } for(int i=0;i<b.length;i++) { if(b[i]!=0) { System.out.println(i+":"+b[i]); } } } }
#include<iostream> #define N 10 using namespace std; int main() { string s; int num ={0}; cin>>s; for(size_t i=0;i<s.size();++i) num[s[i]-'0']++; for(int i=0;i<N;++i) { if(num[i]!=0) cout<<i<<":"<<num[i]<<endl; } return 0; }
相关文章推荐
- java程序为什么比c++运行效率低
- 关于java运行命令行程序输出的问题
- 关于计算java程序运行时间
- 关于计算java程序运行时间
- Java当中计算关于程序运行时间的函数
- 关于计算Java程序运行时间
- 关于java程序的运行方式.
- 关于eclipse运行java程序内存溢出的解决方法
- 关于android工程下不能运行java main程序的解决办法
- 浅谈C++/JAVA/C#运行机制和执行效率
- 关于计算Java程序运行时间
- 关于 Java源文件带有package的普通程序和Applet编译和运行时错误的处理方法
- 浅谈C++/JAVA/C#运行机制和执行效率
- 关于将java程序导成.exe,在没有装jvm的机器上运行
- 关于9月13号 新版本Ubuntu更新后eclipse无法运行Java程序的解决办法
- Java,C++和Ruby的性能PK(续文)--关于凸包算法(convex hull)的效率
- BlackBerry手机上面开发Java程序,如果才能让代码运行效率高,占用系统资源少?
- 浅谈C++/JAVA/C#运行机制和执行效率
- 简单的java扫雷程序,已运行成功。自己想出来的,有个问题很困惑有望高手能解答。
- 关于dos窗口下运行java程序,中文字符打印成乱码的心得总结