ویرگول
ورودثبت نام
Rohullah Tawasoli
Rohullah Tawasoliبرنامه نویس
Rohullah Tawasoli
Rohullah Tawasoli
خواندن ۲ دقیقه·۴ سال پیش

جمع دو عدد

Two Sum
Two Sum

سلام

بریم یک مثال باحال حل کنیم

باید یک تابع بنویسیم که ۲ تا ورودی میگیره یکی از نوع آرایه - اعداد ( nums ) و یکی از نوع عدد صحیح - هدف ( target ).

تا اینجا اوکی ولی کار تابع چیه؟

این تابع باید ۲ تا عدد در خروجی بصورت لیست بفرسته که در اصل این دو عدد آدرس ۲ عددی در لیست ورودی تابع هست که مجموع آنها برابر با target ه.

  • توجه کنید که ممکنه اعداد تکراری در آرایه باشه و نباید از یک عدد دو بار استفاده بشود.
  • جواب رو می توانیم به هر ترتیبی برگردانیم.

مثال ۱ :

ورودی : nums = [2,7,11,15], target = 9 خروجی : [0,1] توضیح : nums[0] + nums[1] == 9

مثال ۲ :

ورودی : nums = [3,2,4], target = 6 خروجی : [1,2]

مثال :

ورودی : nums = [3,3], target = 6 خروجی : [0,1]

برای حلش، می‌توانیم از یک دیکشنری استفاده کنیم که شماره هر عنصر را به عنوان کلید و مقدار آن را به عنوان مکان آن در آرایه ذخیره کند.

سپس در یک حلقه، هر عنصر را از آرایه بخواند و مقدار target را ازش کم و در متغیر complement ذخیره کند.

سپس مقدار complement را به عنوان کلید در دیکشنری جستجو کند. اگر پیدا شد، برای یافتن مکان هر عنصر، مقدار مکانیشون را از دیکشنری بخواند و به عنوان جواب برگرداند.

def twoSum(nums, target): # Create a dictionary to store the index of each number in nums num_dict = {} # Loop through each number in nums for i, num in enumerate(nums): # Check if the complement of the current number exists in num_dict complement = target - num if complement in num_dict: # If it does, return the indices of the two numbers return [num_dict[complement], i] # If it doesn't, add the current number and its index to num_dict num_dict[num] = i

منبع سوال

لایک یادت نره.

شاد و موفق باشی!

پایتونآموزش پایتونبرنامه نویسیبرنامه نویسpython
۱
۰
Rohullah Tawasoli
Rohullah Tawasoli
برنامه نویس
پایتون ای جذاب لعنتی
پایتون ای جذاب لعنتی
هر چیزی که با زبان پایتون شروع شود، با زیبایی و خلاقیت به پایان می‌رسد. پایتون، به دلیل ساختار خوانا، قدرتمند و قابلیت انعطاف پذیری بالا، ابزار اصلی بسیاری از توسعه دهندگان است. پایتون همیشه در دسترس است تا شما را در هر چیزی که بخواهید، همراهی کند و همیشه آماده به کمک شماست.
شاید از این پست‌ها خوشتان بیاید