equilibrium index问题复杂度O(N)的解决方法
2016-10-07 15:06
369 查看
public class Solution { //平衡索引算法-java public int solution(int[] arr){ int sumright=0; int sumleft=0; int index=0; for(int i=0;i<arr.length;i++){ sumright+=arr[i]; } for(int i=0;i<arr.length;i++){ sumleft+=arr[i]; sumright-=arr[i]; if(sumleft==sumright){ return i; }else if(sumleft>sumright){ return -1; } } return -1; } } //在主方法中调用: int[] arr={5,7,1,3,4,3,7,2}; System.out.print(new Solution().solution(arr));
class Solution: #平衡索引算法-python def slotion(self,arr): sumleft = 0 sumright = 0 for item in arr: sumright = sumright + item for item in arr: sumleft = sumleft + item sumright = sumright - item if sumleft == sumright: return arr.index(item) elif sumleft > sumright: return -1 #arr=[5,7,1,1,4,3,5,2] #print(Solution().slotion(arr))
namespace algorithm { public class Solution { //平衡索引算法-c# public int solution(int[] arr) { int sumright = 0; int sumleft = 0; for (int i = 0; i < arr.Count(); i++) { sumright += arr[i]; } for (int i = 0; i < arr.Count(); i++) { sumleft += arr[i]; sumright -= arr[i]; if (sumleft == sumright) { return i; } else if (sumleft > sumright) { return -1; } } return -1; } } } //在主方法中调用: int[] arr={5,7,1,3,4,3,7,2}; Console.WriteLine(new Solution().solution(arr)); Console.Read();
相关文章推荐
- WebLogic8.1的中文问题解决方法(转)
- 系统出问题后的解决方法
- [导入]JDBC链接sql server数据库遇到的问题和解决方法
- 深入剖析Java编程中的中文问题及建议最优解决方法---上篇
- mysql与JDBC中文问题的解决方法
- 在JRE1.4.2以上版本中解决Javascript调用已签名Applet方法时提示没有权限问题
- jbuilderx 光标定位问题解决方法(转载)
- jbuilderx 光标定位问题解决方法(转载)
- 删了sam文件后引起的IIS问题的解决方法
- jbuilder光标问题解决的最简单方法 [小糊涂的灵感]
- SQuirrel SQL Client 中文问题的解决方法
- 深入剖析Java编程中的中文问题及建议最优解决方法---下篇
- DataGuard - 一个关于Physical Standby中recover问题的解决方法
- 基于java时区转换夏令时的问题及解决方法
- .Net反射技术应用解决对象不同版本方法不同参数的问题
- 深入剖析Java编程中的中文问题及建议最优解决方法
- 蛙蛙推荐:整理一个树型问题的解决方法。
- 解决JSP中文显示问题的几个方法
- 巧方法解决大问题
- Java , Installanywhere 在 Redhat 上的中文问题解决方法