pythainlp/thai_wikipedia_clean_20230101 huggingface dataset:
การจัดเรียงข้อมูลแบบหวี (อังกฤษ: Comb sort) คือ การประยุกต์การจัดเรียงข้อมูลแบบ bubble sort เพื่อเพิ่มประสิทธิภาพในการทำงานได้เร็วขึ้นจะเป็นการการจัดเรียงข้อมูลเป็นคู่ใช้เปรียบเทียบโดยการหดตัวเข้าหากันเพื่อเปรียบเทียบค่าซึ่งจะมีความไวกว่า bubble sort และระยะในการหดตัวเข้าหากันเพื่อเปรียบเทียบนี้จะต้องนำจำนวนทั้งหมดของข้อมูลมาหารด้วย 1.3 ตลอดในการวนลูปจบแต่ละรอบเพื่อที่จะได้ระยะในการหดตัวเปรียบเทียบค่าใหม่ในรอบนั้น ๆ ถูกออกแบบเป็นครั้งแรกในปี คศ 1980 โดยคุณ Wlodzimierz Dobosiewicz  หลังจากนั้นได้ถูกปรับปรุงโดยคุณ Stephen lacey และ Richard Box
การทำงานของบับเบิ้ลจะมีประสิทธิภาพในการทำงานได้ช้าเพราะต้องมีการสลับตำแหน่งข้อมูลอยู่บ่อยครั้ง (จะเรียกข้อมูลที่มีค่าน้อยอยู่ในตำแหน่งหลังๆ ของชุดข้อมูลว่า Turtle)  ดังนั้นการจัดเรียงข้อมูลแบบ comb ใช้หลักการขจัดตัว Turtle โดยมีการกำหนด Gap ขึ้นมาแล้วทำการเปรียบเทียบค่าในช่วงของ Gap จะไม่ใช้วิธีการเปรียบเทียบค่าที่อยู่ใกล้กันเหมือนกับวิธีการจัดเรียงแบบบับเบิ้ล ขั้นตอนการทำงานการจัดเรียงแบบ comb sort มีหลักการดังนี้
• ให้ value เป็นการนับจำนวนข้อมูลทั้งหมดใน array ว่ามีกี่ตัวและเก็บค่าไว้
• ทำการหาระยะในการเปรียบเทียบค่าโดยการนำจำนวน value มาหารด้วย 1.3
• วนลูปจนกว่าค่าของ value ที่ทำการหารมาในแต่ละรอบจะเป็น 1
• ให้ count ทำการวน loop for อีกครั้งเพื่อเปรียบเทียบค่าของข้อมูลตำแหน่งที่ 0 ถึง array_len - value เพื่อไม่ให้การเทียบข้อมูลอยู่ที่ตัวสุดท้ายของการเทียบพอดีไม่หลุดออกจากข้อมูล
• เช็คว่าตำแหน่ง index ที่วนลูปแต่ละครั้งมากกว่าตำแหน่งของ index บวกกับ value ที่หารมาในรอบนั้นไหมถ้ามากกว่าจะสลับกัน ทำจนกว่าค่า value ที่หารออกมาจะเท่ากับ 1 ก็จบการทำงานได้
1.คำนวณหาค่า Gap ระหว่างช่องที่จะเปรียบเทียบค่าโดยจะคำนวณหา Gap จาก Shink factor โดยคุณ Stephen lacey และ Richard Box แนะนำควรเป็น  1.3 มีที่มาจากสูตรดังนี้
2.ทำการวนลูปเพื่อเทียบค่าและสลับตำแหน่งของข้อมูล การทำงานในส่วนนี้จะคล้ายกับการจัดเรียงแบบบับเบิ้ลแต่ส่วนที่ต่างกันก็คือตำแหน่งการเปรียบเทียบค่า    การเทียบค่าการจัดเรียงข้อมูลแบบบับเบิ้ลจะเทียบค่าตำแหน่งที่ i กับ i+1 ซึ่งวิธีการแบบ comb จะเทียบตำแหน่งที i กับ i+gap โดยจะทำการเทียบค่าและสลับตำแหน่งข้อมูลที่ต้องการตามจำนวนสมาชิกในชุดข้อมูล  หลังจากนั้นจะคำนวณค่า gap ใหม่อีกครั้งและเช็คว่าค่า gap เป็นหนึ่งหรือไม่มีการการสลับตำแหน่งข้อมูลแล้ว จึงจะยุติการทำงาน ทำให้ได้ชุดข้อมูลที่มีการเรียงลำดับเรียบร้อย
- กำหนดให้
- count คือ ตำแหน่ง loop การเทียบค่าของ 0 ถึง array_len – value
- array_len คือ ความยาวทั้งหมดของ array
- value คือ ค่าที่ถูกหารด้วย 1.3
- index คือ ตำแหน่งเปรียบเทียบของ count + value ที่การวนลูปแต่ล่ะรอบ
จะยกตัวอย่างจากข้อมูลง่ายๆ โดยให้ข้อมูลมีความยาวเท่ากับ 7 โดยเริ่มต้นจะให้
รอบที่ 0.
array_len = 7
value = 7
[ 9 , 18 , 15 , 20 , 0 , 3 , 7 ]
value = 7 // 1.3 =&gt; 5
count = 0 , 1
Index  = 5 , 6
[ 3 , 18 , 15 , 20 , 0 , 9 , 7 ]
[ 3 , 7 , 15 , 20 , 0 , 9 , 18 ]
value = 5 // 1.3 =&gt; 3
count = 0 , 1 , 2 , 3
Index =  3 , 4 , 5 , 6
[ 3 , 0 , 15 , 20 , 7 , 9 , 18 ]
[ 3 , 0 , 9 , 20 , 7 , 15 , 18 ]
[ 3 , 0 , 9 , 18 , 7 , 15 , 20 ]
value = 3 // 1.3 =&gt; 2
count = 0 , 1 , 2 , 3 ,  4
Index = 2 , 3 , 4 , 5 , 6
[ 3 , 0 , 7 , 18 , 9 , 15 , 20 ]
[ 3 , 0 , 7 , 15 , 9 , 18 , 20 ]
value = 2 // 1.3 =&gt; 1
count = 0 , 1 , 2 , 3 ,  4 , 5
Index = 1 , 2 , 3 , 4 , 5 ,  6
[ 0 , 3 , 7 , 15 , 9 , 18 , 20 ]
[ 0 , 3 , 7 , 9 , 15 , 18 , 20 ]
def CombSort(array):
array_len = len(array)
value = len(array)
while value != 1 :
value = int(value // 1.3)
for count in range(0,array_len -value):
if array[count] &gt;= array[count + value]:
array[count],array[count + value] = array[count + value], array[count]
array = [9,18,15,20,0,3,7]
print(CombSort(array))
จาก Code ด้านบนจะมีการทำงานวนลูปจำนวน 2 ลูปคือลูป while และ for โดยในแต่ละลูปจะมีค่า Big O ดังนี้
while value != 1 : จะได้ =&gt; O(n)
for index in range(0,array_len - value): จะได้ =&gt; O(n)
ลูป for อยู่ในลูป while จะนำมาคูณกันได้สมการคำตอบคือ
»&gt; O(n) * O(n) = O(n2)
เป็นกรณีที่จะทำงานแค่ 1 รอบหรือจำนวนของ array มีแค่ 1 ตัวทำให้ไม่ต้องเข้าลูป while จากนั้นจะ return ค่าของ array ออกมาได้เลย
Bio O จะเป็น Big O =&gt; O(1)
เป็นกรณีที่ array มีจำนวนข้อมูลมากทำให้ต้องเข้าลูป while หลายครั้งจึงทำให้เวลาในการทำงานนานขึ้น ถ้าทำเสร็จแล้วให้ return ค่าออกมาและค่าที่ได้จะเรียงจากน้อยไปมากแล้ว
Big O จะเป็น Big O =&gt; O(n^2)
fadelc99. (2 สิงหาคม 2013) การจัดเรียงข้อมูลแบบคอมพ์ (Comb Sort). Retrieved 1 May 2018.
geeksforgeeks. Comb Sort. Retrieved 28 April 2018.
Alban Maxhuni. (24 ธ.ค. 2013) comb sort example. Retrieved 28 April 2018.
รูทเบียร์
อาเล็คส์ มันนิงเงอร์
Alex Manninger
เวส มอร์แกน
เวสต์ลีย์ นาธาน มอร์แกน (เกิดวันที่ 21 มกราคม ค.ศ. 1984) เป็นนักฟุตบอลอาชีพในตำแหน่งกองหลัง และเป็นตำนานกัปตันทีมของสโมสรฟุตบอลเลสเตอร์ซิตีและทีมชาติจาเมกา
มอร์แกนเคยอยู่กับนอตทิงแฮมฟอเรสต์เป็นเวลานาน เขาลงเล่นให้กับสโมสร 402 นัด ทำได้ 14 ประตู ถือเป็นผู้เล่นที่อยู่กับนอตทิงแฮมยาวนานที่สุด ก่อนที่จะย้ายไปเลสเตอร์ซิตีในเดือนมกราคม ค.ศ. 2012 และได้รับแต่งตั้งให้เป็นกัปตันในปีนั้น เขาลงเล่นให้สโมสรเลสเตอร์มากกว่า 200 นัดในทุกรายการ เขาพาสโมสรคว้าแชมป์แชมเปียนชิปในปี ค.ศ. 2014 และคว้าแชมป์พรีเมียร์ลีกสมัยแรกในอีกสองปีถัดมา เขายังเป็นผู้เล่นชาวจาเมกาคนแรกที่ทำประตูในยูฟ่าแชมเปียนส์ลีก
มอร์แกนเกิดและเติบโตที่อังกฤษ แต่เลือกเล่นให้กับทีมชาติจาเมกา โดยลงเล่นให้กับทีมชาตินัดแรกในปี ค.ศ. 2013 เขาเป็นส่วนหนึ่งของจาเมกาในการแข่งขันโกปาอาเมริกา 2 ครั้ง และพาทีมชาติจบอันดับรองชนะเลิศในโกลด์คัพ 2015
วันที่ 1 กันยายน ค.ศ. 2013 มอร์แกนถูกเรียกตัวติดทีมชาติเป็นครั้งแรก เขาลงเล่นให้กับทีมชาตินัดแรกในนัดที่เสมอปานามา 0–0 เมื่อวันที่ 7 กันยายน ค.ศ. 2013 เขาได้รับการแต่งตั้งให้เป็นกัปตันทีมชาติในนัดที่แพ้แคนาดา 3–1 เมื่อวันที่ 9 กันยายน ค.ศ. 2014
มอร์แกนสมรสกับน้องสาวของลีออน เบสต์ อีกทั้งยังเป็นเจ้าของร่วมของบลูอิงค์ ร้านทำรอยสักในเมืองเลสเตอร์
Wes Morgan
เกมพันหน้า Super 7
ที่หยุดรถไฟกบินทร์เก่า
สถานีรถไฟกบินทร์เก่า
ยุทธการที่เงียบกุ๋น
ยุทธการที่เงียบกุ๋น  สงครามที่เกิดขึ้นใน ค.ศ. 204 ในปลายยุค ราชวงศ์ฮั่นตะวันออก เป็นการต่อสู้กันระหว่างขุนศึก เฉาเชา หรือ โจโฉ และ อ้วนซง บุตรชายและผู้สืบทอดของคู่แข่งของโจโฉ ยฺเหวียนเซ่า หรือ อ้วนเสี้ยว ในเมืองที่เป็นฐานอำนาจของตระกูลอ้วน เมืองเงียบกุ๋น (ปัจจุบันคือ หานตาน มณฑลเหอเป่ย์) โจโฉเป็นพันธมิตรกับพี่ชายต่างมารดาของอ้วนซง อ้วนถำ ซึ่งก่อกบฏเนื่องจากความขัดแย้งเรื่องการสืบตำแหน่งและด้วยการร้องขอของอ้วนถำทำให้โจโฉยกทัพเข้าปิดล้อมเมืองเงียบกุ๋นซึ่งการปิดล้อมเมืองเงียบกุ๋นประสบความสำเร็จทำให้อ้วนซงสูญสิ้นอำนาจใน กิจิ๋ว และโจโฉในเวลาต่อมาได้ใช้เมืองเงียบกุ๋นเป็นฐานอำนาจทางการทหารของเขา
มัทเทอุส เฮ็ทเซอเนาเออร์
มัทเทอุส เฮ็ทเซอเนาเออร์  เป็นพลซุ่มยิงเยอรมันเชื้อชาติออสเตรียในช่วงสงครามโลกครั้งที่สอง เขาได้รับหน้าที่ในกองพลทหารภูเขาที่ 3 ในแนวรบด้านตะวันออก ซึ่งได้มีชื่อเสียงด้วยการสังหาร 345 คน การสังหารที่ยาวที่สุดของเขาได้ถูกเขียนรายงานอยู่ที่ 1,100 เมตร (12,00 หลา) เฮ็ทเซอเนาเออร์ยังเป็นผู้ที่ได้รับการปูนบำเหน็จด้วยเหรียญกางเขนเหล็กกางเขนอัศวิน
การหมุนอาร์เรย์
สิ้นสุดราชวงศ์ฮั่น
เจลลี่ฟิช เอนเตอร์เทนเมนต์
Alexander Nevsky Cathedral, Sofia
อาสนวิหารอเล็กซานเดอร์ เนฟสกี
ดับเบิลยูดับเบิลยูอี ยูไนเต็ด คิงดอม แชมเปียนชิป ทัวร์นาเมนต์ (2018)
อเล็กซานเดอร์ ดูมาส์
จังหวัดซัมบวงกาซีบูไก
จังหวัดซัมบวงกาซีบูไก (เซบัวโน: Lalawigan sa Zamboanga Sibugay, Chavacano: "Provincia de Zamboanga Sibugay") เป็นจังหวัดในเขตตังไวนางซัมบวงกา เกาะมินดาเนา ประเทศฟิลิปปินส์ เมืองศูนย์กลางคืออีปีล มีอาณาเขตติดต่อกับจังหวัดฮีลากังซัมบวงกาทางทิศเหนือ ติดกับจังหวัดตีโมกซัมบวงกาทางทิศตะวันออก และติดกับซัมบวงกาซิตีทางทิศตะวันตกเฉียงใต้ ส่วนทางทิศใต้ติดกับอ่าวซีบูเกย์ ซัมบวงกาซีบูไกเป็นจังหวัดที่ถูกจัดตั้งเป็นลำดับที่ 79 ของประเทศ โดยถูกแยกออกจากจังหวัดตีโมกซัมบวงกาในปี ค.ศ. 2001
ข่าวออนไลน์
สโมสรฟุตบอลมีตรากูการ์
สโมสรฟุตบอลมีตรากูการ์  เป็นสโมสรฟุตบอลในประเทศอินโดนีเซีย ตั้งอยู่ที่เมืองเติงการง จังหวัดกาลีมันตันตะวันออก ปัจจุบันกำลังแข่งขันในลีกาซาตู
สโมสรก่อตั้งขึ้นในปี ค.ศ. 1979 และได้เปลี่ยนมาใช้ชื่อ "นียัจมีตรา" หรือ "มีตราซูราบายา" ในช่วงคริสต์ทศวรรษ 1990 ภายหลังจากที่ตกชั้นจากเฟิสต์ดิวิชัน สโมสรได้ย้ายไปตั้งที่เมืองปาลังการายา จังหวัดกาลีมันตันกลาง และเปลี่ยนมาใช้ชื่อ "มีตรากัลเติงปูตรา" (เอ็มกาเป) ในปี ค.ศ. 1999 ต่อมาปลายฤดูกาล 2001 สโมสรตกชั้นสู่เซ็กคันด์ดิวิชัน ปัญหาทางการเงินทำให้สโมสรถูกปล่อยเช่าให้กับ H Suryanto Anwar และย้ายไปตั้งที่เมืองเติงการง จังหวัดกาลีมันตันตะวันออก และได้เปลี่ยนมาใช้ชื่อ "มีตรากูการ์" ต่อมาช่วงปลายฤดูกาล 2003 มีตรากูการ์เลื่อนชั้นกลับสู่เฟิสต์ดิวิชันอีกครั้ง ต่อมาในฤดูกาล 2005 เจ้าของคนใหม่ได้ซื้อกิจการสโมสร และในปลายฤดูกาล 2007 สโมสรเลื่อนชั้นสู่พรีเมียร์ดิวิชันได้สำเร็จ และในฤดูกาล 2010–11 มีตรากูการ์ก็ได้เลื่อนชั้นสู่ซูเปอร์ลีก
Mitra Kukar F.C.
ดาร์บีลอนดอน
ดาร์บีลอนดอน เป็นดาร์บีท้องถิ่นระหว่างหลายสโมสรที่ตั้งอยู่ในลอนดอน เมืองหลวงของประเทศอังกฤษ ส่วนใหญ่จะสื่อถึงการแข่งขันฟุตบอลระหว่างสโมสร และความขัดแย้งของผู้สนับสนุนทั้งสองสโมสร ในฤดูกาล 2016–17 มีทั้งหมด 13 สโมสรในเกรตเตอร์ลอนดอนที่ลงเล่นในพรีเมียร์ลีกและฟุตบอลลีก ดาร์บีลอนดอนที่รุนแรงที่สุด ได้แก่ อาร์เซนอล พบ ทอตนัมฮอตสเปอร์ และ มิลล์วอลล์ พบ เวสต์แฮมยูไนเต็ด
สโมสรในลอนดอน.
สโมสรในอดีต ได้แก่ เทมส์ และวิมเบิลดัน
ภูเขาไฟคีเลาเวอา
ภูเขาไฟคีเลาเวอา เป็นภูเขาไฟรูปโล่และเป็นภูเขาไฟมีพลังในเกาะฮาวาย เป็นหนึ่งในภูเขาไฟ 5 ลูกที่ประกอบกันเป็นเกาะฮาวาย (อีก 4 ลูกมีเมานาโลอา เมานาเคอา โคฮาลา ฮูอาลาไล) ตั้งอยู่แนวชายฝั่งทางตอนใต้ของเกาะมีอายุระหว่าง 300,000 ถึง 600,000 ปี ยอดของภูเขาไฟลูกนี้โผล่พ้นระดับน้ำทะเลเมื่อประมาณ 100,000 ปีก่อน
คีเลาเวอาเป็นภูเขาไฟที่อายุน้อยที่สุดเป็นอันสองของจุดร้อนฮาวายและเป็นจุดปะทุของเทือกเขาใต้ทะเลฮาวาย–เอมเพอเรอะ ในอดีตภูเขาไฟลูกนี้ไม่มีความโดดเด่นด้านภูมิประเทศและกิจกรรมในอดีตต่าง ๆ ก็เกิดขึ้นพร้อมกับภูเขาไฟเมานาโลอาทำให้คิดคีเลาเวอาอาจเป็นแอ่งภูเขาไฟขนาดเล็กของภูเขาไฟที่ใหญ่กว่า โครงสร้างของคีเลาเวอานั้นมีขนาดใหญ่แอ่งภูเขาไฟบนยอดของมันเพิ่งเกิดขึ้นมาไม่นานและมีเขตเขาทรุด 2 แห่งที่ยังเคลื่อนไหวโดยที่หนึ่งแผ่ขยายเป็นระยะทาง 125 ก.ม.ทางตะวันออกส่วนอีกที่ 35 ก.ม.ทางตะวันตก ซึ่งทั้ง 2 แห่งนี้เกิดจากรอยเลื่อนที่ยังคงมีพลังความลึกของเขาทรุดจะลึกลงเฉลี่ย 2 ถึง 20 มม.ต่อปี
คีเลาเวอามีการปะทุขึ้นอย่างต่อเนื่องตั้งแต่ พ.ศ. 2526 และก่อให้เกิดความเสียหายต่อทรัพย์สินจำนวนมากรวมถึงการทำลายเมืองคาลาปานา (Kalapana) ใน พ.ศ. 2533 เมื่อวันที่ 3 พฤษภาคม พ.ศ. 2561 ปล่องลาวาแห่งใหม่ได้แตกออกในพื้นที่ตอนล่างของจังหวัดปูนา (Puna, Hawaii) การระเบิดของภูเขาไฟใรครั้งนี้ยังทำให้เกิดการปล่อยก๊าซพิษและเกิดแผ่นดินไหวขนาดใหญ่จนทำให้ห้องอพยพคนกว่า 2,000 คนออกจากเขตเลอลานี วันที่ 9 พฤษภาคม พ.ศ. 2561 การปะทุทำลายบ้านเรือนอีก 27 หลังในเขตปกครองรองของเลอลานี วันที่ 17 พฤษภาคม พ.ศ. 2561 เวลา 4:17 นาฬิกาตามเวลาท้องถิ่นภูเขาไฟปะทุอย่างรุนแรงและพ้นเถ้าถ่านขึ้นไปในอากาศสูงกว่า 30,000 ฟุต
Kīlauea
ภูเขาไฟคิลาเว
พายุฝุ่นในประเทศอินเดีย พ.ศ. 2561
เมื่อวันที่ 2–3 พฤษภาคม พ.ศ. 2561 ได้เกิดเหตุพายุฝุ่นความเร็วสูงที่ข้ามมายังชายแดนประเทศอินเดียตอนเหนือ ส่งผลทำให้มีผู้เสียชีวิตกว่า 110 คน และบาดเจ็บมากกว่า 200 คน ในรัฐอุตตรประเทศมีผู้เสียชีวิต 43 คนในเมืองอัคระ และเสียชีวิตอีก 30 คนในเมืองอื่น ในรัฐราชสถานมีผู้เสียชีวิต 35 คน และบาดเจ็บกว่า 200 คน พายุฝุ่นถล่มทำให้เสาไฟฟ้ากว่า 8,000 ต้นหักล้ม ต้นไม้อีกกว่า 100 ต้นได้รับความเสียหาย อย่างไรก็ตามพายุถือเป็นเรื่องที่ปกติของประเทศ แต่เนื่องจากพายุในครั้งนี้มาตอนกลางคืนและมีความเร็วสูง ทำให้มีผู้เสียชีวิตเยอะ
พายุฝุ่นมักเป็นส่วนหนึ่งของฤดูกาลในอินเดีย ซึ่งจะเกิดขึ้นในช่วงฤดูร้อนเพราะสภาพอากาศแห้งแล้งทำให้ฝุ่นติดไปกับพายุ ส่วนมากจะมีผู้เสียชีวิตไม่เกิด 12 คน อย่างเช่นเหตุพายุฝุ่นถล่มเมื่อวันที่ 11 เมษายน พ.ศ. 2561 มีผู้เสียชีวิตแค่ 19 คน
รัฐบาลรัฐอุตตรประเทศได้ประกาศว่า จะช่วยเหลือครอบครัวผู้เสียชีวิตเป็นจำนวนเงิน ₹4 lakh ($6,100 ดอลลาห์สหรัฐ)
เหตุพายุฝุ่นถล่มที่อินเดีย พ.ศ. 2561
รายการประชิด
รายการประชิด  เป็นวิธีการของโครงสร้างแบบรายการของทฤษฎีกราฟ ซึ่งเป็นการใช้ลิสต์ในการเก็บข้อมูลของกราฟซึ่งเป็นโครงสร้างข้อมูลโดยวิธีการนี้จะใช้สำหรับการแก้ปัญหาของทฤษฎีกราฟ
การทำงานของ Adjacency List สามารถแบ่งลักษณะการเก็บข้อมูลได้ 2 แบบตามการจำแนกชนิดของกราฟ คือ กราฟแบบมีทิศทาง (directed graph) และ กราฟแบบไม่มีทิศทาง (undirected graph) โดยสามารถใช้อัลกอริทึม การค้นหาแบบจำกัดความลึก(อังกฤษ : Depth-first Traversal) และ การค้นหาในแนวกว้าง(อังกฤษ : Breath-first Traversal) เพื่อค้นหาจุดที่เชื่อมต่อกันของกราฟ
ขั้นตอนการทำงานของรายการประชิด(Adjacency List)
ตัวอย่างของกราฟไม่มีทิศทางและมีทิศทาง.
กราฟไม่มีทิศทาง (Undirected graph)
กราฟแบบมีทิศทาง (Directed graph)
ขั้นตอนวิธี(Code).
ขั้นตอนโค้ด.
class Vertex(โหนด):
def รับข้อมูล(n)
กำหนดชื่อของ Vertex จากข้อมูลที่ได้รับ n
กำหนดลิสต์ของ Vertex
def เพิ่ม Vertex จากข้อมูล(v)
if ไม่มี Vertex ในลิสต์ของ Vertex
เพิ่ม Vertex จากฟังก์ชันรับข้อมูล เข้าไปในลิสต์
จัดเรียง Vertex ที่อยู่ในลิสต์
class Graph(กราฟ):
กำหนดลิสต์ของ Vertex ใหม่
def เพิ่ม Vertex(v)
if Vertex มาจากคลาส Vertex และ Vertex ที่มาจากคลาส Vertex ไม่อยู่ในลิสต์ของ Vertex ใหม่
กำหนด Vertex ตัวแรก
รีเทิร์น True
รีเทิร์น False
def เพิ่ม Edge(u,v)
if u อยู่ใน Vertex ใหม่ และ v อยู่ใน Vertex ใหม่
Vertex ใหม่ u = ฟังก์ชันเพิ่ม Vertex จากข้อมูล v
Vertex ใหม่ v = ฟังก์ชันเพิ่ม Vertex จากข้อมูล u
def รีเทิร์นผลลัพธ์
กำหนดลิสต์ของผลลัพธ์
for key in ลิสต์ของ Vertex ใหม่ที่ key
เพิ่มเข้าไปในลิสต์ของผลลัพธ์
รีเทิร์น ลิสต์ของผลลัพธ์
ตัวอย่างโค้ด(Code).
เขียนโดย ภาษาไพทอน(Python)
class Vertex:
self.name = n
self.neighbors = list
def add_neighbor(self, v):
if v not in self.neighbors:
self.neighbors.append(v)
self.neighbors.sort
if isinstance(vertex, Vertex) and vertex.name not in self.vertices:
self.vertices[vertex.name] = vertex
def add_edge(self, u, v):
if u in self.vertices and v in self.vertices:
self.vertices[u].add_neighbor(v)
self.vertices[v].add_neighbor(u)
def print_graph(self):
res = []
for key in sorted(list(self.vertices.keys)):
res.append(key + str(self.vertices[key].neighbors))
ตัวอย่างเทสเคส(Test case).
Scinario1: Graph have 5 vertex is A, B, C, D and E
Given list of vertex edge is ["AB","BC","CD",DE","EA"]
When convert vertex list to list of result
Then return list of result
from AdjencencyList import*
def test_adjencency_list_1:
g = Graph
for i in range(ord('A'), ord('F')):
g.add_vertex(Vertex(chr(i)))
edges = ['AB', 'BC', 'CD', 'DE', 'EA']
for edge in edges:
g.add_edge(edge[:1], edge[1:])
result = ["A['B', 'E']", "B['A', 'C']", "C['B', 'D']", "D['C', 'E']", "E['A', 'D']"]
assert g.print_graph == result
ความเร็วในการทำงาน.
จากตัวอย่างโค้ดด้านบน Big(O) ของคลาส Vertex คือ O(n) + O(n) = O(2n) = O(n) = O(1)และ Big(O) ของคลาส Graph คือ O(n) + O(n) + O(n) = O(3n) = O(n)
คือ คลาส Vertex เนื่องจากต้องมีการทำงานทุกครั้งที่ใส่ข้อมูลเข้าไป จึงมีความเร็วในการทำงานเป็น O(1)
คือ คลาส Graph เนื่องจากต้องมีการทำงานทุกครั้งที่รับข้อมูลจากคลาส Vertex จึงมีความเร็วในการทำงานเป็น O(n)
greeksofgreeks. Graph and its representations. Retrieved 5 May 2018
youtube.mycodeschool. Graph Representation part 03 - Adjacency List(Oct 24, 2016).Retrieved 2 May 2018
youtube.Joe Jame.Python Link List(Jan 9, 2018).Retrieved 4 May 2018
แผ่นดินไหวในเกาะฮาวาย พ.ศ. 2561
วันที่ 4 พฤษภาคม พ.ศ. 2561 เกิดแผ่นดินไหวขนาด 6.9 แมกนิจูก บนเกาะฮาวายในหมู่เกาะฮาวายเวลาประมาณ 12:33 น. ตามเวลาท้องถิ่น จุดเหนือศูนย์เกิดแผ่นดินไหวอยู่ใกล้กับปีกเขาด้านใต้ของภูเขาไฟคีเลาเวอาซึ่งเป็นจุดที่มีกิจกรรมทางธรณีวิทยามาตั้งแต่ปลายเดือนเมษายน แผนดินไหวครั้งนี้เกิดขึ้นพร้อมกับการปะทุของลาวา บริเวณนี้เคยได้รับผลกระทบจากแผ่นดินไหวเมือ พ.ศ. 2518 ที่ทำให้มีคนตาย 2 คนและบาดเจ็บอีก 28 คน
แผ่นดินไหวมีขนาดความแรงได้ที่ระดับ VIII ("รุนแรง") ตามระดับความรุนแรงของมาตราเมร์กัลลี มีแผ่นดินไหวนำขนาดเล็กวัดขนาดได้ 5.4 ซึ่งรู้สึกได้ทั่วทั้งเกาะและไกลถึงเกาะโอวาฮู
เกิดคลื่นสึนามิสูงประมาณ 40 เซนติเมตรในคาโปโฮ (Kapoho) 20 ซ.ม. ใน ไฮลู (Hilo) และ 15 ซ.ม. ใน โฮนูอโป แต่ไม่มีรูปแบบของคลื่นยักษ์ที่ได้รับรายงานตามชายฝั่ง
แรงสั่นทำให้อาคารหลายแห่งได้รับความเสียหาย เกิดแผ่นดินถล่มบริเวณชายฝั่งและเกิดรอยแตกบนถนนบางแห่ง
ไอริ ซุซุกิ
ทางหลวงแผ่นดินหมายเลข 4083
ทางหลวงแผ่นดินหมายเลข 4083 (ทางเข้าระโนด) จุดเริ่มต้นจากแยกรับแพรก บนทางหลวงแผ่นดินหมายเลข 408 ที่ตำบลท่าบอน อำเภอระโนด จังหวัดสงขลา ผ่านตำบลปากแตระ สิ้นสุดที่วงเวียนบริเวณหน้าวัดราษฎร์บำรุง กับถนนมหาดไทย 1 ตำบลระโนด อำเภอระโนด จังหวัดสงขลา ระยะทางประมาณ 2.887 กม.
ทางหลวงแผ่นดินหมายเลข 4199
แยกทางหลวงหมายเลข 4009 (บ้านบ่อพระ) - แยกทางหลวงหมายเลข 4133 (บ้านควนสามัคคี) มีจุดเริ่มต้นบนทางหลวงแผ่นดินหมายเลข 4009 ที่แยกบ่อพระ ตำบลอิปัน อำเภอพระแสง จังหวัดสุราษฎร์ธานี ผ่านตำบลสาคู อำเภอพระแสง สิ้นสุดที่ทางหลวงแผ่นดินหมายเลข 4133 แยกควนสามัคคี บ้านควนสามัคคี ตำบลพ่วงพรมคร อำเภอเคียนซา จังหวัดสุราษฎร์ธานี ระยะทาง 18.956 กม. โดยปัจจุบันการจราจรเป็นแบบ 2 ช่องทางสวนกัน
รอย เบนท์ลีย์
รอย โธมัส แฟรงค์ เบนท์ลีย์ (; 17 พฤษภาคม 2467 — 20 เมษายน 2561) อดีตกองหน้าฟุตบอลทีมชาติอังกฤษของ เชลซี และนอกจากนี้เขายังเป็นปู่ของ เดวิด เบนท์ลีย์ อดีตกองกลางทีมชาติอังกฤษอีกด้วย
เขาเริ่มต้นเส้นทางนักฟุตบอลอาชีพกับสโมสร บริสตอลซิตี เมื่อ ค.ศ. 1939 ขณะอายุเพียง 15 ปีแต่ไม่มีโอกาสได้ลงเล่นแม้แต่นัดเดียวจึงได้ย้ายมาร่วมทีม นิวคาสเซิลยูไนเต็ด เมื่อ ค.ศ. 1946
ที่นิวคาสเซิลยูไนเต็ดเขาลงเล่นไปทั้งสิ้น 48 นัดยิงไป 22 ประตูทำให้ทีมสิงโตน้ำเงินคราม เชลซี ตัดสินใจซื้อตัวมาร่วมทีมด้วยค่าตัว 11,000 ปอนด์เมื่อ ค.ศ. 1948 ซึ่งเขาเป็นกัปตันทีมเชลซีในชุดคว้าแชมป์ลีกดิวิชั่น 1 (เดิม) ครั้งแรกเมื่อ ค.ศ. 1955 ก่อนที่ในปีต่อมาคือ ค.ศ. 1956 เขาจะย้ายไปร่วมทีมฟูลัมโดยตลอด 8 ปีในถิ่นสแตมฟอร์ดบริดจ์เขาลงเล่นทั้งสิ้น 324 นัดยิงได้ 130 ประตู
หลังจากอยู่กับทีมฟูลัมนาน 4 ปีเขาก็ย้ายไปร่วมทีมควีนส์พาร์กเรนเจอส์เมื่อ ค.ศ. 1960 ก่อนจะแขวนสตั๊ดใน ค.ศ. 1962
วลาดีมีร์ กลาซูนอฟ
วลาดีมีร์ อะนาโตลเยวิช กลาซูนอฟ (; 20 มกราคม พ.ศ. 2513 –) เป็นผู้ดำเนินรายการ, โปรดิวเซอร์ และผู้กำกับชาวรัสเซีย เขาเป็นสมาชิกของสมาคมสื่อสารมวลชนรัสเซีย และเป็นผู้ดำเนินรายการประจำของรายการสดรายวันโรจดิออนนืยเอวะแอสแอสแอสเอร์ ทางช่องนอสทัลกียา
เขาได้ดำเนินการออกอากาศสดมากกว่า 3,000 ตอน โดยแขกรับเชิญของรายการเป็นศิลปินที่ได้รับความนิยม, กวี, นักการเมือง, นักเขียน, นักแสดง, นักกีฬา, นักร้อง
เขาได้ทำงานการแสดงทั้งละครเวทีและละครเพลง ทั้งในรัสเซียและต่างประเทศ
เขาได้ทำงานพิเศษบนโทรทัศน์ทุกช่องในหลายผลงาน ได้แก่:
งานเบื้องหลังเป็นผู้เขียนบทและผู้กำกับในหลายโครงการ ได้แก่รายการ "โฟโต้อัลบั้ม"  ทางช่อง คโต เย้สท์ คโต  และ รายการ "อิลีตาสตรานืยโซเวียโตว"  ทางช่องนอสทัลกียา
ปัจจุบันสมรสแล้ว มีทายาท 2 คน
ราฟาเอล เบนีเตซ
เมารีซีโอ โปเชตีโน
ที่อยู่อาศัยใต้ทะเล
ใต้ทะเลมีสภาพแวดล้อมมากมายที่สิ่งมีชีวิตสามารถใช้เป็นที่อยู่อาศัยได้ สิ่งมีชีวิตใต้ทะเลทุกชนิดต้องพึ่งน้ำทะเล ที่อยู่อาศัยคือพื้นที่ทางระบบนิเวศวิทยาหรือสิ่งแวดล้อมซึ่งเป็นที่ ๆ หนึ่งหรือหลายสปีชีส์อาศัยอยู่
ที่อยู่อาศัยใต้ทะเลแบ่งเป็นถิ่นที่อยู่บริเวณชายฝั่งและถิ่นที่อยู่บริเวณทะเลเปิด ถิ่นที่อยู่บริเวณชายฝั่งจะพบได้ในพื้นที่มีน้ำขึ้นมาในแนวชายฝั่งจนถึงขอบของไหล่ทวีป สิ่งมีชีวิตในทะเลส่วนมากจะพบในบริเวณนี้ถึงแม้ว่าบริเวณนี้จะมีพื้นเพียง 7% ของพื้นที่มหาสมุทรทั้งหมด ส่วนถิ่นที่อยู่บริเวณทะเลเปิดจะนับตั้งแต่ขอบของไหล่ทวีปลงมา
การแบ่งที่อยู่อาศัยใต้ทะเลนั้นยังมีการแบ่งอีกแบบคือเขตน้ำตื้นกับเขตทะเลด้านล่าง สัตว์ในเขตน้ำตื้นจะพบบริเวณผิวน้ำและในทะเลที่ไม่ลึกมากและห่างจากทะเลด้านล่างที่ลึก ส่วนสัตว์ในเขตด้านล่างจะพบในทะเลลึกหรือที่ก้นทะเล สิ่งมีชีวิตอาศัยอยู่ในที่อยู่อาศัยในเขตน้ำตื้นกล่าวกันว่าเป็นสิ่งมีชีวิตในทะเลเปิดหรือบริเวรผิวน้ำเช่นทูน่า ทำนองเดียวกันสิ่งมีชีวิตที่อาศัยอยู่ในทะเลด้านล่างกล่าวกันว่าเป็นสิ่งมีชีวิตตามพื้นหรือทะเลลึกเช่นปลาหน้าดิน สัตว์ในเขตน้ำตื้นนั้นจะมีที่อยู่อาศัยถาวรหรือไม่ถาวรขึ้นอยู่กับกระแสน้ำจะไปทางไหน
ที่อยู่อาศัยใต้ทะเลสามารถเปลี่ยนแปลงไปตามประชากรที่อาศัยอยู่ สิ่งมีชีวิตในทะเลบางชนิดเช่นปะการัง สาหร่ายทะเล โกงกางและหญ้าทะเลเป็นวิศวกรรมทางนิเวศวิทยาที่สำคัญเนื่องจากพวกมันก่อให้เกิดสภาพแวดล้อมทางทะเลขึ้นใหม่และสามารถใช้เป็นที่อยู่อาศัยสำหรับสิ่งมีชีวิตอื่น ๆ ได้
รายการโยงแบบวงกลม
การเรียงลำดับแบบแพนเค้ก
การเรียงลำดับแบบแพนเค้ก  เป็นการเรียงลำดับสำหรับปัญหาทางคณิตศาสตร์ การเรียงแถวอย่างเป็นระเบียบของแพนเค้กในการสั่งซื้อโดยการเรียงตามขนาด โดยแผ่นที่ใหญ่สุดจะอยู่ข้างล่าง แผ่นเล็กสุดอยู่ข้างบน เมื่อไม้พายสามารถแทรกที่จุดใดๆในกองนั้นและใช้ในการพลิกแพนเค้กทั้งหมด จำนวนแพนเค้กจึงจำเป็นสำหรับการกำหนดจำนวนขั้นต่ำในการกล่าวถึงปัญหานี้ ผู้ที่กล่าวถึงรูปแบบการเรียงนี้เป็นคนแรก คือ American geometer Jacob E. Goodman. ซึ่งแตกต่างจากขั้นตอนวิธีการเรียงลำดับแบบดั้งเดิม ดังนั้น การเรียงลำดับแบบแพนเค้ก จึงเป็นการเรียงลำดับตามการกลับรายการให้น้อยที่สุด ตัวแปรของปัญหา คือ แพนเค้กที่ถูกเผาไหม้ ซึ่งแต่ละแผ่นของแพนเค้กจะมีด้านที่ถูกเผาไหม้ และแพนเค้กทั้งหมดต้องวางทับกันโดยมีด้านที่เผาไหม้อยู่ด้านล่าง
ปัญหาการเรียงแบบแพนเค้กในสตริง.
ลำดับที่มีการผกผันในการเปลี่ยนแปลงตำแหน่ง เช่น "สตริง" เป็นลำดับที่เป็นสัญลักษณ์ในการทำซ้ำได้ และในการทำซ้ำนี้ อาจจะลดจำนวนการพลิกตำแหน่งที่จำเป็นในการจัดเรียง Chitturi and Sudborough (2010) and Hurkens et al.(2007) แสดงให้เห็นว่า ความซับซ้อนของการเปลี่ยนสตริงที่เข้ากันได้กับอีกจำนวนหนึ่งที่มีจำนวนน้อยที่สุดของการผกผันตำแหน่ง คือ NP-complete พวกเขายังให้ขอบเขตที่เหมือนกัน Hurkens et al ให้ใช้อัลกอริทึมที่แน่นอนในการจัดเรียงไบนารีและการค้นหาแบบไตรภาค สตริง Chitturi (2011) ได้พิสูจน์ว่า ความซับซ้อนของการเปลี่ยนแปลงสตริงที่เข้ากันได้กับจำนวนที่น้อยที่สุดในการผกผันตำแหน่ง - ปัญหาแพนเค้กที่ถูกเผาไหม้บนสตริงเป็น NP-complete
ขั้นตอนการแก้ปัญหา.
1.ต้องเริ่มต้นสั่งแพนเค้กจากเล็กที่สุด (ด้านบน) ถึงใหญ่ที่สุด (ด้านล่าง) จึงจะสามารถจัดเรียงตามลำดับได้
2.สามารถทำการพลิกได้ทั้งกอง
3.เมื่อต้องการพลิกแพนเค้กที่ด้านล่างสุดของสแต็ค ต้องพลิกไปที่ด้านบนสุด (จากนั้นพลิกกลับไปที่ด้านล่าง)
4.หากต้องการสั่งซื้อแพนเค้กแต่ละแพนเค้กจะต้องพลิกขึ้นไปด้านบนและพลิกไปยังตำแหน่งสุดท้าย
กราฟแพนเค้ก.
กราฟแพนเค้ก n คือกราฟที่มีจุดยอดของสัญลักษณของ n สัญลักษณ์ตั้งแต่ 1 ถึง n และขอบของมันจะได้รับระหว่างการแทนที่ด้วยคำนำหน้า เป็นกราฟปกติที่มี n! vertices ระดับของ n-1 ปัญหาการจัดเรียงแพนเค้กและปัญหาเพื่อให้ได้เส้นผ่านศูนย์กลางของแพนเค้กกราฟมีค่าเท่ากัน
กราฟแพนเค้กของมิติ n, Pn สามารถสร้างขึ้นได้จาก n สำเนาของ Pn-1 โดยการกำหนดองค์ประกอบที่แตกต่างจากชุด {1, 2, ... , n} เป็นส่วนต่อท้ายของแต่ละสำเนา
เส้นรอบวง : g(Pn) = 6, if n &gt; 2.
เนื่องจากกราฟแพนเค้กมีคุณสมบัติที่น่าสนใจหลายอย่างเช่น โครงสร้างสมมาตรและการเรียกซ้ำขนาดเล็กและเส้นผ่าศูนย์กลางเมื่อเทียบกับขนาดของกราฟความสนใจเป็นจำนวนมากสำหรับโมเดลเครือข่ายการเชื่อมต่อแบบคู่ขนานสำหรับคอมพิวเตอร์แบบขนาน เมื่อเราพิจารณาแพนเค้กกราฟเป็นแบบจำลองของเครือข่ายการเชื่อมต่อเส้นผ่าศูนย์กลางของกราฟเป็นตัวชี้วัดที่แสดงถึงความล่าช้าในการสื่อสาร
ลำดับจำนวนเต็มที่เกี่ยวข้อง.
จำนวนสแต็คของความสูงที่ต้องการ n ที่ต้องการ flips k ที่ไม่เหมือนใคร
ลำดับจาก The Online Encyclopedia of Integer Sequences of Neil Sloane:
OEIS A058986 - จำนวนพลิกสูงสุด
OEIS A067607 - จำนวนสแต็คที่ต้องการจำนวนพลิกสูงสุด (ด้านบน)
OEIS A078941 - จำนวน flips สูงสุดสำหรับ stack "burnt"
OEIS A078942 - จำนวน flips สำหรับเรียงลำดับ "burnt-side-on-top"
OEIS A092113 - รูปสามเหลี่ยมด้านบนอ่านตามแถว
บุนเดิสลีกา ฤดูกาล 2018–19
บุนเดิสลีกา ฤดูกาล 2018–19 เป็นฤดูกาลที่ 56 ของบุนเดิสลีกา การแข่งขันระดับพรีเมียร์ของฟุตบอลเยอรมัน ซี่งจะเริ่มต้นขึ้นในวันที่ 24 สิงหาคม ค.ศ. 2018 และจะสิ้นสุดฤดูกาลในวันที่ 18 พฤษภาคม ค.ศ. 2018 บาเยิร์นมิวนิก คือทีมที่ชนะเลิศเมื่อฤดูกาลที่แล้ว
ทั้งหมด 18 ทีมที่เข้าร่วมในฤดูกาล 2018–19 ของบุนเดิสลีกา ณ วันที่ 6 พฤษภาคม ค.ศ. 2018, 16 ทีมได้รับการยืนยันพื้นที่ในลีกเรียบร้อยแล้ว
"เวลาทั้งหมดคือ UTC+2".
"รวมผลสองนัด เสมอ 2–2. อูนิโอนเบอร์ลินชนะด้วยกฏประตูทีมเยือนและได้เลื่อนชั้นสู่บุนเดิสลีกา, ในขณะที่ เฟาเอ็ฟเบ ชตุทท์การ์ท เป็นทีมที่ต้องตกชั้นสู่ ซไวเทอบุนเดิสลีกา."
รางวัลประจำเดือน.
! rowspan="2" | เดือน
! colspan="2" | ผู้เล่นยอดเยี่ยมประจำเดือน
! colspan="2" | ดาวรุ่งยอดเยี่ยมประจำเดือน
! colspan="2" | ประตูยอดเยี่ยมประจำเดือน
! rowspan="2" | อ้างอิง
! สโมสร
! สิงหาคม
! กันยายน
! ตุลาคม
! พฤศจิกายน
! ธันวาคม
เปรัก
ขั้นตอนวิธีของนายธนาคาร
ขั้นตอนวิธีของนายธนาคาร (Banker’s algorithm) ซึ่งหมายถึง เป็นการแก้ปัญหาของธนาคารในกรณีที่มีลูกค้าต้องการกู้ยืมเงิน ซึ่งมีลักษณะการทำงานเหมือนโปรเซสที่ใช้ทรัพยากรในระบบปฏิบัติการทั่วๆไป (ลูกค้าเปรียบเสมือนโปรเซส และเงินที่ถูกยืมเปรียบเสมือนทรัพยากร) จากวิธีการทำงานของธนาคาร ธนาคารจะมีจำนวนเงินที่ให้ลูกค้ากู้ยืมที่จำกัด และมีรายชื่อของลูกค้าพร้อมเครดิตที่แต่ละตนจะได้รับ ลูกค้าบางคนอาจจะพยายามกู้เงินให้ได้เต็มเครดิตที่ตัวเองมี และบางครั้งลูกค้าคนนั้นก็ไม่ยอมจ่ายเงินคืนกลับให้ธนาคารจนกว่าจะได้รับจำนวนเงินที่ต้องการกู้ยืมทั้งหมด แต่นายธนาคารเองก็สามารถปฏิเสธการกู้ยืมของลูกค้าบางคนได้ ถ้าการปล่อยกู้ยืมครั้งนั้นจะทำให้เกิดความเสี่ยงทำให้ธนาคารมีเงินไม่เพียงพอที่จะให้ผู้นั้นได้กู้ยืมเพิ่มเติม และลูกค้าคนนั้นก็ไม่สามารถใช้เงินคืนแก่ธนาคารได้
ในระบบที่ทรัพยากร 1 ตัวสามารถให้บริการได้พร้อมกันหลายโพรเซส การใช้กราฟแทนการใช้งานทรัพยากรจะไม่เหมาะสม จึงมีการเสนออัลกอริทึมของนายธนาคาร ซึ่งเป็นอัลกอริทึมที่ใช้งานได้จริง ระบบธนาคารที่ว่าธนาคารจะไม่จ่ายเงินที่มีอยู่ให้ตามความต้องการของลูกค้าทั้งหมดได้เป็นเวลานาน (หมายถึง มีคนถอนออกอย่างเดียว ธนาคารจะไม่สามารถอยู่ได้) ดังนั้นจึงต้องมีระบบเพื่อกำหนดจำนวนสูงสุดที่จะสามารถให้บริการได้ จำนวนนี้อาจไม่จำเป็นต้องเป็นจำนวนทรัพยากรทั้งหมดที่มีอยู่ในระบบ เมื่อผู้ใช้ขอใช้กลุ่มของทรัพยากร ระบบต้องทำการตรวจสอบว่าถ้าให้ใช้แล้วระบบจะยังคงอยู่ในภาวะปลอดภัยหรือไม่ ถ้าไม่ปลอดภัยการให้ใช้ทรัพยากรต้องรอจนกว่าจะมีผู้ใช้ทรัพยากรรายอื่นที่ใช้แล้วกลับเข้าสู่ระบบ
โครงสร้างของระบบนายธนาคารมีดังนี้.
กำหนดให้มี n โพรเซส มีทรัพยากรในระบบทั้งหมด m ตัวมีข้อมูลดังนี้
1. Available : เป็นเวกเตอร์ของขนาดที่ใช้ชี้จำนวนของทรัพยากรที่สามารถใช้งานได้ Available [j]=k ดังนั้น k คือจำนวนที่ทรัพยากรชนิด j จะสามารถให้บริการได้
2. Max : เป็นค่าเมตริกซ์ขนาด n x m ที่กำหนดความต้องการสูงสุดของแต่ละโพรเซส ถ้า Max[i,j] = k แล้วโพรเซส i อาจต้องใช้ทรัพยากร j สูงถึง k บริการ