الفنون رقم 033
الفنون رقم 033
الفنون 033
الخوارزمية
6. تحويل متعرج
الصعوبة: متوسطة
تتم كتابة السلسلة "PAYPALISHIRING" بنمط متعرج على عدد معين من الصفوف مثل هذا: (قد ترغب في عرض هذا النمط بخط ثابت للحصول على وضوح أفضل)
P A H N
A P L S I I G
Y I R
ثم اقرأ سطراً سطراً: "PAHNAPLSIIGYIR"
اكتب الكود الذي سيأخذ سلسلة وإجراء هذا التحويل في عدد من الصفوف:
string convert(string s, int numRows);
مثال 1:
Input: s = "PAYPALISHIRING", numRows = 3
Output: "PAHNAPLSIIGYIR"
مثال 2:
Input: s = "PAYPALISHIRING", numRows = 4
Output: "PINALSIGYAHRPI"
Explanation:
P I N
A L S I G
Y A H R
P I
الحل
لا داعي للقلق بشأن ما قد يحدث.
اللغة: سويفت
class Solution{
func convert(_ s: String, _ numRows: Int) -> String {
if s.count <= numRows || numRows == 1{
return s;
}
var rowStrs = Array(repeating: "", count: numRows)
var step = 0
var start = 0
for i in 0..<s.count {
let char = s[s.index(s.startIndex, offsetBy: i)]
rowStrs[start].append(char)
if start == 0 {
step = 1;
}
else if start == (numRows - 1) {
step = -1;
}
start = start + step
}
var result = ""
for i in 0..<rowStrs.count {
result = result + rowStrs[i]
}
return result
}
}
7. عدد صحيح عكسي
الصعوبة: سهل
بالنظر إلى عدد صحيح بعلامة 32 بت، عكس أرقام العدد الصحيح.
مثال 1:
Input: 123
Output: 321
مثال 2:
Input: -123
Output: -321
مثال 3:
Input: 120
Output: 21
ملاحظة:
لنفترض أننا نتعامل مع بيئة يمكنها فقط تخزين الأعداد الصحيحة ضمن نطاق الأعداد الصحيحة ذات الإشارة 32 بت: [−2<sup>31</sup>, 2<sup>31</sup>− 1]. لغرض هذه المشكلة، افترض أن وظيفتك ترجع 0 عند تجاوز العدد الصحيح المعكوس.
الحل
اللغة: سويفت
class Solution {
func reverse(_ x: Int) -> Int {
var result = 0
var tem = x
while tem != 0 {
if result > Int32.max/10 || result < Int32.min / 10 {
return 0
}
result = result * 10 + tem % 10
tem = tem / 10
}
return result;
}
}
أو
class Solution {
func reverse(_ x: Int) -> Int {
var result = 0
var tem = x
while tem != 0 {
result = result * 10 + tem % 10
tem = tem / 10
if result > Int32.max || result < Int32.min {
return 0
}
}
return result;
}
}

مراجعة
أصناف من المفردات النقية والمفردة وشبه المفردة:
https://dandan2009.github.io/2019/10/24/design-patterns-by-tutorials-the-power-of-OOP-part-2/
نصائح
هل تحتاج إلى عرض خلية talbe أو إعادة تحميل البيانات أو إعادة تحميل البيانات؟ أفضل ما في الأمر هو أن كل شيء على ما يرام
شارك
الإصدار الأحدث من نظام Mac هو 10.15، وxcode، وxcod e11.1، لا داعي للقلق بشأن الكمبيوتر المحمول A PP هو أول من يتولى مسؤولية تشارلز. يمكن أن يكون الكمبيوتر المحمول هو الحل الأمثل.
What to read next
Want more posts about ARTS?
Posts in the same category are usually the best next step for reading more on this topic.
View same categoryWant to keep following #iOS?
Tags are useful for related tools, specific problems, and similar troubleshooting notes.
View same tagWant to explore another direction?
If you are not sure what to read next, return to the homepage and start from categories, topics, or latest updates.
Back home