js 數組里面任意兩個數的和與目標值


<!DOCTYPE html>
<html>
	<head>
		<meta charset="UTF-8">
		<title></title>
	</head>
	<body>
		問題: 給定一個數組例如[1,3,4,6,7] ,再給定一個目標數,例如9。 寫一個算法找出兩個數他們相加等於目標數,返回他們在數組中的位置。給出一個解即可,同一個數字不能使用2次。

		比如[1,3,4,6,7] 目標數為9,那么需要返回[1,3]。如果目標數為20,返回null。

	</body>
	<script type="text/javascript">
		//要求 target = x + y
		//即  x = target - y;
		function func(arr,target){
			var obj = {};
			for(var i = 0; i < arr.length; i++){
				var item = arr[i];
				if(obj[item] === undefined){
					var x = target - item;
					obj[x] = i;
				}else{
					return [obj[item],i];	
				}
			}
			return null;
		}
		
		console.log(func([1,3,7,6,9,11],9))
		
	</script>
</html>

  


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM