LeetCode中算法js实现twoSum【一】

【一】twoSum

要求:Given nums = [2, 7, 11, 15], target = 9,Because nums[0] + nums[1] = 2 + 7 = 9, return [0, 1].

复杂度o(n),运用hashMap。

<!DOCTYPE html>
<html>
	<head>
		<meta charset="UTF-8">
		<title></title>
	</head>
	<body>
		<h1>要求:</h1>
		<p>Given nums = [2, 7, 11, 15], target = 9,

Because nums[0] + nums[1] = 2 + 7 = 9,
return [0, 1].</p>
		
		<script type="text/javascript">
			
			function twoSum(arr,target){
				
				var map={};
				
				var lg=arr.length;
				if(lg>1){
					
					for(var i=0;i<lg;i++){
						var rr=target - arr[i];
						if(rr in map){
							return ('['+map[rr]+','+i+']');
						}
						map[arr[i]]=i;
					}
					return("没有符合条件的");
				}else{
					return ("数组长度不够");
				}
				
			}
			
			console.log(twoSum([2,7,8,12],9))
		</script>
	</body>
</html>

点赞