Algorithms—238.Product of Array Except Self
2015-07-28 12:55
627 查看
思路:逐个相乘,每位相除,注意有0的情况。
public class Solution {
public int[] productExceptSelf(int[] nums) {
int length=nums.length;
int k=0;
boolean flag=true;
int product=1;
for (int i = 0; i < length; i++) {
if (nums[i]==0) {
if (flag) {
k=i;
flag=false;
}else {
int[] answer=new int[length];
for (int j = 0; j <length; j++) {
answer[j]=0;
}
return answer;
}
}else {
product*=nums[i];
}
}
int[] answer=new int[length];
if (flag) {
for (int i = 0; i < length; i++) {
answer[i]=product/nums[i];
}
}else {
answer[k]=product;
}
return answer;
}
}
耗时:476ms,写的比较渣。
public class Solution {
public int[] productExceptSelf(int[] nums) {
int length=nums.length;
int k=0;
boolean flag=true;
int product=1;
for (int i = 0; i < length; i++) {
if (nums[i]==0) {
if (flag) {
k=i;
flag=false;
}else {
int[] answer=new int[length];
for (int j = 0; j <length; j++) {
answer[j]=0;
}
return answer;
}
}else {
product*=nums[i];
}
}
int[] answer=new int[length];
if (flag) {
for (int i = 0; i < length; i++) {
answer[i]=product/nums[i];
}
}else {
answer[k]=product;
}
return answer;
}
}
耗时:476ms,写的比较渣。
相关文章推荐
- Golang Channel 整理
- golang 类型转换
- 基本的Logos语法
- GoogleApis 屏蔽
- HangOver
- 前向分步算法(forward stagewise algorithm)
- Golang网页下载示例
- 【Google】25匹马的角逐
- Django basic command
- hdu 4722 Good Numbers(数位dp)
- HDU 2092 整数解
- django 1.8 官方文档翻译: 3-6-1 中间件概览
- 谷歌注册多个与Google Play和 China相关域名
- Goldbach's Conjecture(哥德巴赫猜想)
- mongo安装副本集
- HDU 1512 Monkey King(左偏树+并查集)
- 在heroku上部署gost代理服务端
- chrome访问google的hosts文件设置,测试好用
- go语言常用函数:copy
- go语言常用函数:make