Forwarded from Full Stack Amigo (HESAM KASHEFI)
YouTube
Indecies and Ranges in C#
What is Index and What is Range in C#?
How to slice arrays in C#
How to index from end of arrays?
Hot to substring with index and range in C#?
😀 QUESTIONS? ▶ COMMENT
🔴 SUBSCRIBE: https://bit.ly/39PJJ8Z
🔴 LIKE SHARE SUBSCRIBE
▶ SOCIAL MEDIA:
Instagram:…
How to slice arrays in C#
How to index from end of arrays?
Hot to substring with index and range in C#?
😀 QUESTIONS? ▶ COMMENT
🔴 SUBSCRIBE: https://bit.ly/39PJJ8Z
🔴 LIKE SHARE SUBSCRIBE
▶ SOCIAL MEDIA:
Instagram:…
👍1
#csharp
#dotnet
#comparison
روش های بد مقایسه رشته ها در سی شارپ
تا به حال اکثرا از ToLowerیا ToUpper برای مقایسه رشته های غیر حساس به حروف بزرگ استفاده می کردیم .
اما این بهترین راه برای انجام آن نیست.
استفاده از string.Equals این مقایسه از سرعت عملکرد بهتری برخوردار است (در واقع به حروف کوچک یا بزرگ رشته ها علاقه ای نداریم).
همانطور که در تصویر می بینیم.
پس برای مقایسه دو رشته string بهتره از String.Equals استفاده کنیم
@fullStackDevs
#dotnet
#comparison
روش های بد مقایسه رشته ها در سی شارپ
تا به حال اکثرا از ToLowerیا ToUpper برای مقایسه رشته های غیر حساس به حروف بزرگ استفاده می کردیم .
اما این بهترین راه برای انجام آن نیست.
استفاده از string.Equals این مقایسه از سرعت عملکرد بهتری برخوردار است (در واقع به حروف کوچک یا بزرگ رشته ها علاقه ای نداریم).
همانطور که در تصویر می بینیم.
پس برای مقایسه دو رشته string بهتره از String.Equals استفاده کنیم
@fullStackDevs
👍11❤1
IMG_0165.JPG
2.2 MB
#csharp #visualstudio #csharp10 #aspdotnet #aspcore #dotnet
6 Amazing feature and improvement in C# 10:
📌 File-scoped namespace
📌 Record structs
📌 Constant interpolated strings
📌 Extended property patterns
📌 Global using directive
📌 Assignment and declaration in same deconstruction
❗️C# 10 is supported on .NET 6 .
@fullStackDevs
6 Amazing feature and improvement in C# 10:
📌 File-scoped namespace
📌 Record structs
📌 Constant interpolated strings
📌 Extended property patterns
📌 Global using directive
📌 Assignment and declaration in same deconstruction
❗️C# 10 is supported on .NET 6 .
@fullStackDevs
👍5
#feature
#cSharp
یکی از ویژگی های که از C# 7.0 معرفی شد استفاده از خط زیر (underscore) ( _ ) به عنوان جداکننده رقم شناخته می شود. هدف این است که خوانایی بهتر و آسانتر را بخصوص در اعداد بزرگ فراهم کنیم.
📌 اطلاعات بیشتر
@fullStackDevs
#cSharp
یکی از ویژگی های که از C# 7.0 معرفی شد استفاده از خط زیر (underscore) ( _ ) به عنوان جداکننده رقم شناخته می شود. هدف این است که خوانایی بهتر و آسانتر را بخصوص در اعداد بزرگ فراهم کنیم.
📌 اطلاعات بیشتر
@fullStackDevs
❤9👍6
#Algorithm #Sliding_window
#SlidingWindow #CSharp
🧩 الگوریتم Sliding Window:
الگوریتم Sliding Window یکی از تکنیکهای مهم برای حل مسائل آرایهها و رشتهها به طور بهینه است. این روش با استفاده از دو نشانگر برای بررسی بخشهای مختلف داده، به سرعت جواب رو پیدا میکنه.
🔑 چطور کار میکنه؟
- دو نشانگر (`left` و `right`) برای نمایش پنجره (قسمتی از داده) استفاده میکنیم.
- نشانگر راست حرکت میکنه و هر بار یک کاراکتر یا مقدار جدید بررسی میشه.
- وقتی که شرایط خاصی مثل وجود مقدار تکراری یا رسیدن به اندازهای خاص محقق بشه، نشانگر چپ حرکت میکنه تا پنجره رو کوچکتر کنیم.
مزیت اصلی: زمان اجرا به O(n) کاهش مییابد که نسبت به روشهای سنتی با O(n²) بسیار سریعتر است.
💡 مثال: طول بزرگترین زیررشته بدون کاراکتر تکراری
ورودی: "abcabcbb"
خروجی: 3 (زیربرنامه "abc" بزرگترین زیررشته بدون تکرار است)
کاربردها:
- پیدا کردن طول بزرگترین زیررشته یا زیرآرایه
- جستجوی زیرمجموعهها با ویژگیهای خاص
- مسائل مربوط به جمع یا مقایسه زیرآرایهها و زیررشتهها
این الگوریتم خیلی مفیده برای حل مسائل بهینه در آرایهها و رشتهها، خصوصاً وقتی نیاز به
بررسی بخشهای مختلف داریم!
@fullStackDevs
#SlidingWindow #CSharp
🧩 الگوریتم Sliding Window:
الگوریتم Sliding Window یکی از تکنیکهای مهم برای حل مسائل آرایهها و رشتهها به طور بهینه است. این روش با استفاده از دو نشانگر برای بررسی بخشهای مختلف داده، به سرعت جواب رو پیدا میکنه.
🔑 چطور کار میکنه؟
- دو نشانگر (`left` و `right`) برای نمایش پنجره (قسمتی از داده) استفاده میکنیم.
- نشانگر راست حرکت میکنه و هر بار یک کاراکتر یا مقدار جدید بررسی میشه.
- وقتی که شرایط خاصی مثل وجود مقدار تکراری یا رسیدن به اندازهای خاص محقق بشه، نشانگر چپ حرکت میکنه تا پنجره رو کوچکتر کنیم.
مزیت اصلی: زمان اجرا به O(n) کاهش مییابد که نسبت به روشهای سنتی با O(n²) بسیار سریعتر است.
💡 مثال: طول بزرگترین زیررشته بدون کاراکتر تکراری
ورودی: "abcabcbb"
خروجی: 3 (زیربرنامه "abc" بزرگترین زیررشته بدون تکرار است)
using System;
using System.Collections.Generic;
class Solution {
public int LengthOfLongestSubstring(string s) {
HashSet<char> set = new HashSet<char>();
int left = 0, maxLength = 0;
for (int right = 0; right < s.Length; right++) {
while (set.Contains(s[right])) {
set.Remove(s[left]);
left++;
}
set.Add(s[right]);
maxLength = Math.Max(maxLength, right - left + 1);
}
return maxLength;
}
}
کاربردها:
- پیدا کردن طول بزرگترین زیررشته یا زیرآرایه
- جستجوی زیرمجموعهها با ویژگیهای خاص
- مسائل مربوط به جمع یا مقایسه زیرآرایهها و زیررشتهها
این الگوریتم خیلی مفیده برای حل مسائل بهینه در آرایهها و رشتهها، خصوصاً وقتی نیاز به
بررسی بخشهای مختلف داریم!
@fullStackDevs
👍5