10 مفهوم ریاضی برای برنامه نویسان - KDnuggets

10 مفهوم ریاضی برای برنامه نویسان - KDnuggets

گره منبع: 2874651

10 مفهوم ریاضی برای برنامه نویسان
تصویر توسط نویسنده
 

As the demand for programmers increases, the supply naturally will meet with more people entering the industry everyday. However, it is a competitive industry. In order to continuously improve yourself, skill-set and increase your salary – you need to prove that you are a proficient programmer. One way you can do this is by learning the things that people don’t typically know. 

بسیاری از مردم با این فرض که شما نیازی به دانستن ریاضیات پشت آن ندارید وارد صنعت برنامه نویسی می شوند. اگرچه این تا حدودی درست است، اما درک مفهوم منطقی ریاضی پشت برنامه نویسی شما را به یک برنامه نویس ماهر تبدیل می کند. 

چگونه است؟ با درک آنچه انجام می دهید و آنچه در حال رخ دادن است. که چگونه.

پس بیایید مستقیماً به آن بپریم. 10 مفهوم برتر ریاضی برای برنامه نویسان چیست؟

Boolean algebra stems off algebra. I guess that was obvious. If you are a programmer or on your quest to become one, you probably already know what Boolean is. If not, I’ll quickly define it. 

Boolean is a data type/binary variable that has one of the two possible values, for example 0 (false) or 1 (true). The boolean data type is backed by boolean algebra, in which the variable’s values are known as the truth values, true and false. When working with boolean algebra, there are three operators that you can use: 

  • ربط یا عملیات AND
  • عملیات تفکیک یا OR
  • عملیات نفی یا عدم

اینها را می توان به صورت بصری به عنوان نمودارهای ون نشان داد تا درک بهتری از خروجی به شما بدهد. جبر بولی از 6 قانون تشکیل شده است:

  • قانون عوام
  • قانون انجمنی
  • قانون توزیعی
  • و قانون
  • یا قانون
  • قانون وارونگی

کامپیوترها اعداد را درک می کنند و به همین دلیل است که آنها به یک سیستم اعداد نیاز دارند. یک سیستم اعداد به عنوان یک سیستم نوشتاری شناخته می شود که برای بیان اعداد استفاده می شود. به عنوان مثال، شما این چهار نوع رایج سیستم اعداد را دارید:

  1. سیستم اعداد اعشاری (پایه-10)
  2. سیستم اعداد باینری (Base-2)
  3. سیستم اعداد هشتگانه (Base-8)
  4. سیستم اعداد هگزادسیمال (پایه-16)

کامپیوترها از یک سیستم اعداد Base-2 کار می کنند، که در آن ارقام ممکن 0 و 1 هستند. Base64 همچنین برای رمزگذاری داده های باینری در قالب رشته ای استفاده می شود.

More on learning about numbers, we have floating point. A floating point is a variable data type which represents real numbers as an approximation. A floating-point number is a number in which the position of the decimal point can move around or “float” instead of being in a fixed position. This allows developers to make a trade-off between range and precision.

اما چرا تقریب؟ کامپیوترها فقط فضای محدودی دارند، یا 32 بیت (تک دقت) یا 64 بیت (دقت مضاعف). 64 بیت پیش فرض برای زبان های برنامه نویسی مانند پایتون و جاوا اسکریپت است. نمونه ای از اعداد ممیز شناور 1.29، 87.565 و 9038724.2 هستند. می تواند یک عدد صحیح مثبت یا منفی با یک اعشار باشد. 

همچنین به عنوان log شناخته می شود یک مفهوم ریاضی است که از معکوس نمایی برای پاسخ به سوال استفاده می کند. پس چرا لگاریتم برای برنامه نویسان مهم است> زیرا محاسبات پیچیده ریاضی را ساده می کند. برای مثال، 1000 = 10^4 را می توان به صورت 4 = log101000 نیز نوشت.

عدد مبنا یک شیء ریاضی است که باید در خودش ضرب شود. توان عددی است که مشخص می کند یک عدد پایه چند بار باید در خودش ضرب شود. بنابراین، لگاریتم توانی است که نشان می دهد برای تولید یک عدد معین، یک پایه باید به چه توانی افزایش یابد.

وقتی log از Base-2 استفاده می کند، یک لگاریتم باینری است و اگر Base-10 باشد، یک لگاریتم رایج است. 

یک مجموعه مجموعه‌ای از ارزش‌های منحصربه‌فرد است که نیازی به ارتباط با یکدیگر ندارند. آنها فقط می توانند شامل موارد منحصر به فرد باشند و نمی توانند یک مورد را دو بار یا بیشتر داشته باشند.

به عنوان مثال فایل های اکسل یا یک پایگاه داده حاوی جداولی هستند که دارای مجموعه ای از ردیف های منحصر به فرد هستند. این یک نوع ریاضی گسسته است زیرا این ساختارها می توانند تعداد محدودی عنصر داشته باشند. هدف نظریه مجموعه ها درک مجموعه ارزش ها و روابط بین یکدیگر است. این معمولاً برای تحلیلگران داده، کارشناسان SQL و دانشمندان داده استفاده می شود. 

شما می توانید این کار را با استفاده از:

  • Inner join or intersection – Returns a set containing elements that are present in both sets
  • Outer join or union – Returns elements from both sets
  • Union all – همانند عملگر خارجی Join، اما شامل همه موارد تکراری خواهد بود.
  • به جز یا منهای - A منهای B مجموعه ای است حاوی عناصری از مجموعه A که عناصر مجموعه B نیستند. 

ترکیب شناسی هنر شمارش اشیا به منظور به دست آوردن نتایج و درک خواص معینی از ساختارهای محدود از طریق الگوها است. برنامه نویسی همه چیز در مورد حل مسائل است و ترکیبات راهی است که می توانیم اشیاء را برای مطالعه این ساختارهای گسسته محدود مرتب کنیم.

فرمول Combinatorics ترکیبی از Permutation و Combination است.

  • جایگشت عملی است که یک مجموعه را به ترتیب یا دنباله ای مرتب می کند
  • ترکیب، انتخاب مقادیر مجموعه است که در آن ترتیب در نظر گرفته نمی شود.

As you already know, a graph is a visual representation of a set of values and these values can be connected. When it comes to data, these values are connected due to variables – which in graph theory are known as links. 

نظریه گراف مطالعه نمودارهای مربوط به رابطه بین یال ها و رئوس مجموعه نقاط متصل شده است. این به ما امکان می‌دهد با استفاده از رئوس، یک رابطه جفتی بین اشیا ایجاد کنیم، که به عنوان گره‌هایی که توسط لبه‌ها به هم متصل می‌شوند، معروف به خطوط نیز شناخته می‌شوند. یک نمودار به صورت یک جفت G(V, E) نشان داده می شود، که در آن V نشان دهنده رئوس مجموعه محدود و E نشان دهنده یال های مجموعه محدود است.

نظریه پیچیدگی مطالعه مقدار زمان و حافظه ای است که برای اجرای یک الگوریتم به عنوان تابعی از اندازه ورودی لازم است. دو نوع پیچیدگی وجود دارد:

  • Space complexity – the amount of memory an algorithm needs to run.
  • Time complexity – the amount of time an algorithm needs to run.

افراد بیشتری در مورد پیچیدگی زمانی نگران هستند زیرا می توانیم از حافظه یک الگوریتم مجددا استفاده کنیم. وقتی نوبت به پیچیدگی زمانی می رسد، بهترین راه برای اندازه گیری آن با در نظر گرفتن تعداد عملیاتی است که الگوریتم انجام می دهد. الگوریتم‌ها با استفاده از دستورات if و حلقه‌ها ساخته می‌شوند، بنابراین برای کاهش زمان صرف شده، می‌خواهید از کدهایی استفاده کنید که تا حد امکان دارای بیانیه‌های if و حلقه‌های کمتری باشد.

نظریه پیچیدگی برای الگوریتم ها از نماد big-o برای کمک به توصیف و ارائه درک بهتر از رفتار محدود کننده یک الگوریتم استفاده می کند. برای طبقه بندی الگوریتم ها بر اساس نحوه واکنش آنها به تغییرات اندازه ورودی استفاده می شود.

آهان آمار اگر به دنبال ورود به هوش مصنوعی هستید، باید در مورد آمار بدانید. هوش مصنوعی و یادگیری ماشینی نام های خوبی هستند که برای آمار استفاده می شوند. برنامه نویسی آماری برای حل مشکلات داده های سنگین مانند ChatGPT استفاده می شود. پاسخ ChatGPT همه بر اساس احتمال مطابقت با درخواست ارائه شده توسط کاربر است. 

در مورد برنامه نویسی آماری باید بیشتر از میانگین، میانه و حالت یاد بگیرید. شما باید درباره سوگیری، کوواریانس و قضیه بیس بیاموزید. به عنوان یک برنامه نویس، وظایفی برای شما تعیین می شود و متوجه خواهید شد که این یک مشکل رگرسیون خطی است یا یک مشکل رگرسیون لجستیک. درک تفاوت بین این دو به شما کمک می کند تا تشخیص دهید چه نوع وظیفه ای در دست دارید. 

You may have looked at linear algebra in school – or you may have not. Linear algebra is very important and is widely used in computer graphics and deep learning. In order to grasp linear algebra, you will need to understand these three words:

  • Scalar – a single numerical value
  • Vector – a list of numbers or 1 dimensional array
  • Matrix – a grid or 2 dimensional array

بردارها می توانند نقاط و جهت را در یک فضای سه بعدی نشان دهند، در حالی که ماتریس ها می توانند تبدیل هایی را که برای این بردارها اتفاق می افتد را نشان دهند. 

این مقاله مروری سریع بر 10 مفهوم برتر ریاضی که حرفه برنامه نویسی شما را بهبود می بخشد را در اختیار شما قرار می دهد. یادگیری پیچیدگی ها نه تنها وظایف روزمره شما را روان تر و درک آن آسان تر می کند، بلکه می تواند در مورد پتانسیل شما به کارفرمای شما نیز نشان داده شود. 

اگر به دنبال یک کتاب رایگان برای کمک به شما هستید، بررسی کنید: ریاضیات برای یادگیری ماشین: کتاب الکترونیکی رایگان
 
 
نیشا آریا دانشمند داده، نویسنده فنی آزاد و مدیر انجمن در KDnuggets است. او به ویژه علاقه مند به ارائه مشاوره شغلی یا آموزش های علم داده و دانش مبتنی بر نظریه در مورد علم داده است. او همچنین مایل است راه‌های مختلفی را که هوش مصنوعی می‌تواند به طول عمر انسان کمک کند، کشف کند. یک یادگیرنده مشتاق که به دنبال گسترش دانش فنی و مهارت های نوشتاری خود است و در عین حال به راهنمایی دیگران کمک می کند.
 

تمبر زمان:

بیشتر از kdnuggets