คำถามติดแท็ก arrays

อาร์เรย์คือโครงสร้างข้อมูลเชิงเส้นที่เรียงลำดับซึ่งประกอบด้วยชุดขององค์ประกอบ (ค่าตัวแปรหรือการอ้างอิง) โดยแต่ละรายการจะถูกระบุด้วยดัชนีหนึ่งรายการหรือมากกว่า เมื่อถามเกี่ยวกับตัวแปรเฉพาะของอาร์เรย์ให้ใช้แท็กที่เกี่ยวข้องเหล่านี้แทน: [vector], [arraylist], [matrix] เมื่อใช้แท็กนี้ในคำถามที่เฉพาะเจาะจงกับภาษาการเขียนโปรแกรมให้แท็กคำถามด้วยภาษาการเขียนโปรแกรมที่ใช้

6
อาร์เรย์ที่ปรับเปลี่ยนได้หลากหลายที่ขอบเขตไฟล์
ฉันต้องการสร้างอาร์เรย์คงที่เพื่อใช้กับไฟล์การใช้งาน Objective-C ของฉันที่คล้ายกับสิ่งนี้ที่ระดับบนสุดของไฟล์ ".m" ของฉัน: static const int NUM_TYPES = 4; static int types[NUM_TYPES] = { 1, 2, 3, 4 }; ฉันวางแผนที่จะใช้ในNUM_TYPESภายหลังในไฟล์ดังนั้นฉันจึงต้องการใส่ไว้ในตัวแปร อย่างไรก็ตามเมื่อฉันดำเนินการนี้ฉันได้รับข้อผิดพลาด "ประเภท" ที่ปรับเปลี่ยนได้หลากหลายที่ขอบเขตไฟล์ " ฉันรวบรวมว่าสิ่งนี้อาจเกี่ยวข้องกับขนาดอาร์เรย์ที่เป็นตัวแปร (ฉันไม่ได้รับข้อความนี้เมื่อฉันใส่ลิเทอรัลจำนวนเต็มเช่นstatic int types[4]) ฉันต้องการแก้ไขปัญหานี้ แต่บางทีฉันอาจจะคิดผิดทั้งหมด ... ฉันมี 2 เป้าหมายที่นี่: มีอาร์เรย์ที่สามารถเข้าถึงได้ทั่วทั้งไฟล์ ในการห่อหุ้มNUM_TYPESเป็นตัวแปรดังนั้นฉันจึงไม่มีตัวอักษรเดียวกันกระจัดกระจายอยู่ตามที่ต่างๆในไฟล์ของฉัน ข้อเสนอแนะใด ๆ ? [แก้ไข] พบสิ่งนี้ในคำถามที่พบบ่อยเกี่ยวกับ C: http://c-faq.com/ansi/constasconst.html


12
รับดัชนีของค่าหนึ่งในอาร์เรย์ใน PHP
ฉันมีอาร์เรย์: $list = array('string1', 'string2', 'string3'); ฉันต้องการรับดัชนีสำหรับค่าที่กำหนด (เช่น1สำหรับstring2และ2สำหรับstring3) สิ่งที่ฉันต้องการคือตำแหน่งของสตริงในอาร์เรย์ string1 คือ 0 string2 คือ 1 string3 คือ 2 จะบรรลุเป้าหมายนี้ได้อย่างไร?
87 php  arrays 

5
JavaScript: ตรวจสอบว่าอาร์กิวเมนต์เป็นอาร์เรย์แทนที่จะเป็นวัตถุ (Node.JS)
ฉันจะตรวจสอบได้อย่างไรว่าอาร์กิวเมนต์เป็นอาร์เรย์เนื่องจากtypeof []ส่งคืน'object'และฉันต้องการแยกความแตกต่างระหว่างอาร์เรย์และวัตถุ เป็นไปได้ว่าออบเจ็กต์จะมีลักษณะเหมือน{"0":"string","1":"string","length":"2"}อาร์เรย์ แต่ฉันไม่ต้องการให้มันออกมาเป็นอาร์เรย์หากเป็นอ็อบเจ็กต์ที่ดูเหมือนอาร์เรย์ JSON.parseและJSON.stringifyสามารถสร้างความแตกต่างนี้ได้ ฉันจะทำมันได้อย่างไร? ฉันใช้ Node.JS ซึ่งใช้ V8 เหมือนกับ Chrome

28
ค้นหาจำนวนเต็มที่เล็กที่สุดที่ไม่มีอยู่ในรายการ
คำถามสัมภาษณ์ที่น่าสนใจที่เพื่อนร่วมงานของฉันใช้: สมมติว่าคุณได้รับรายการจำนวนเต็ม 64 บิตที่ไม่ได้ลงนามที่ยาวมากและไม่ได้เรียงลำดับ คุณจะหาจำนวนเต็มที่ไม่ติดลบที่เล็กที่สุดที่ไม่มีอยู่ในรายการได้อย่างไร? FOLLOW-UP: ตอนนี้มีการเสนอวิธีแก้ปัญหาที่ชัดเจนโดยการเรียงลำดับแล้วคุณสามารถทำได้เร็วกว่า O (n log n) หรือไม่? การติดตาม: อัลกอริทึมของคุณต้องทำงานบนคอมพิวเตอร์โดยมีหน่วยความจำ 1GB CLARIFICATION: รายการอยู่ใน RAM แม้ว่าอาจใช้จำนวนมาก คุณได้รับขนาดของรายการโดยพูดว่า N ล่วงหน้า
87 arrays  algorithm 


8
ฉันจะวนซ้ำแต่ละองค์ประกอบในเมทริกซ์ n มิติใน MATLAB ได้อย่างไร
ฉันมีปัญหา. ฉันต้องการวนซ้ำทุกองค์ประกอบในเมทริกซ์ n มิติใน MATLAB ปัญหาคือฉันไม่รู้ว่าจะทำอย่างไรกับจำนวนมิติโดยพลการ ฉันรู้ว่าฉันพูดได้ for i = 1:size(m,1) for j = 1:size(m,2) for k = 1:size(m,3) และอื่น ๆ แต่มีวิธีทำตามจำนวนมิติโดยพลการหรือไม่?

15
การประกาศอาร์เรย์ของวัตถุ
ฉันมีตัวแปรซึ่งเป็นอาร์เรย์และฉันต้องการให้ทุกองค์ประกอบของอาร์เรย์ทำหน้าที่เป็นวัตถุตามค่าเริ่มต้น เพื่อให้บรรลุเป้าหมายนี้ฉันสามารถทำสิ่งนี้ในรหัสของฉันได้ var sample = new Array(); sample[0] = new Object(); sample[1] = new Object(); ใช้งานได้ดี แต่ฉันไม่ต้องการพูดถึงหมายเลขดัชนีใด ๆ ฉันต้องการให้องค์ประกอบทั้งหมดของอาร์เรย์ของฉันเป็นวัตถุ ฉันจะประกาศหรือเริ่มต้นได้อย่างไร var sample = new Array(); sample[] = new Object(); ฉันลองใช้รหัสด้านบน แต่ไม่ได้ผล ฉันจะเริ่มต้นอาร์เรย์ของวัตถุโดยไม่ใช้หมายเลขดัชนีได้อย่างไร

5
เหตุใด C และ C ++ จึงสนับสนุนการกำหนดอาร์เรย์แบบสมาชิกภายในโครงสร้าง แต่โดยทั่วไปแล้วไม่ใช่
ฉันเข้าใจว่าไม่รองรับการกำหนดอาร์เรย์แบบสมาชิกดังนั้นสิ่งต่อไปนี้จะใช้ไม่ได้: int num1[3] = {1,2,3}; int num2[3]; num2 = num1; // "error: invalid array assignment" ฉันเพิ่งยอมรับสิ่งนี้ว่าเป็นความจริงโดยคิดว่าจุดมุ่งหมายของภาษาคือการจัดเตรียมเฟรมเวิร์กแบบปลายเปิดและให้ผู้ใช้ตัดสินใจว่าจะใช้บางสิ่งบางอย่างเช่นการคัดลอกอาร์เรย์อย่างไร อย่างไรก็ตามสิ่งต่อไปนี้ใช้งานได้: struct myStruct { int num[3]; }; struct myStruct struct1 = {{1,2,3}}; struct myStruct struct2; struct2 = struct1; อาร์เรย์num[3]เป็นสมาชิกที่กำหนดจากอินสแตนซ์ในstruct1อินสแตนซ์ในstruct2. เหตุใดการมอบหมายอาร์เรย์ที่ชาญฉลาดของสมาชิกจึงได้รับการสนับสนุนสำหรับโครงสร้าง แต่โดยทั่วไปไม่ได้รับการสนับสนุน แก้ไข : ความคิดเห็นของRoger Pateในเธรดstd :: string ใน struct - ปัญหาการคัดลอก / การกำหนด? ดูเหมือนจะชี้ไปในทิศทางทั่วไปของคำตอบ …

7
PHP รวมอาร์เรย์ที่เชื่อมโยงสองอาร์เรย์ไว้ในอาร์เรย์เดียว
$array1 = array("$name1" => "$id1"); $array2 = array("$name2" => "$id2", "$name3" => "$id3"); ฉันต้องการอาร์เรย์ใหม่ที่รวมทั้งหมดเข้าด้วยกันนั่นคือมันจะเป็น $array3 = array("$name1" => "$id1", "$name2" => "$id2", "$name3" => "$id3"); วิธีที่ดีที่สุดในการทำคืออะไร? ขออภัยฉันลืมรหัสจะไม่จับคู่กัน แต่ในทางเทคนิคแล้วชื่อสามารถทำได้ แต่ไม่น่าจะเป็นไปได้และพวกเขาทั้งหมดจะต้องอยู่ในรายการเดียว ฉันดูที่ array_merge แต่ไม่แน่ใจว่าเป็นวิธีที่ดีที่สุดหรือไม่ นอกจากนี้คุณจะทดสอบหน่วยนี้อย่างไร


7
สตริงเข้าร่วมรายการ <int> หรือประเภทอื่น ๆ
ฉันต้องการเปลี่ยนอาร์เรย์หรือรายการของ int เป็นสตริงคั่นด้วยจุลภาคดังนี้: string myFunction(List&lt;int&gt; a) { return string.Join(",", a); } แต่สตริงเข้าร่วมใช้List&lt;string&gt;เป็นพารามิเตอร์ที่สองเท่านั้น วิธีที่ดีที่สุดในการทำคืออะไร?
86 c#  arrays  string 

9
การลบออกจากอาร์เรย์ระหว่างการแจงนับใน Swift?
ฉันต้องการแจกแจงผ่านอาร์เรย์ใน Swift และลบบางรายการออก ฉันสงสัยว่าสิ่งนี้ปลอดภัยหรือไม่และถ้าไม่ฉันควรจะทำอย่างไร ตอนนี้ฉันจะทำสิ่งนี้: for (index, aString: String) in enumerate(array) { //Some of the strings... array.removeAtIndex(index) }

30
หมุนองค์ประกอบในอาร์เรย์ใน JavaScript
ฉันสงสัยว่าวิธีใดเป็นวิธีที่มีประสิทธิภาพที่สุดในการหมุนอาร์เรย์ JavaScript ฉันคิดวิธีแก้ปัญหานี้โดยที่ค่าบวกnหมุนอาร์เรย์ไปทางขวาและค่าลบnไปทางซ้าย ( -length &lt; n &lt; length): Array.prototype.rotateRight = function( n ) { this.unshift( this.splice( n, this.length ) ); } ซึ่งสามารถใช้วิธีนี้: var months = ["Jan", "Feb", "Mar", "Apr", "May", "Jun", "Jul", "Aug", "Sep", "Oct", "Nov", "Dec"]; months.rotate( new Date().getMonth() ); เวอร์ชันดั้งเดิมของฉันด้านบนมีข้อบกพร่องดังที่คริสตอฟชี้ให้เห็นในความคิดเห็นต่อไปเวอร์ชันที่ถูกต้องคือ (การส่งคืนเพิ่มเติมอนุญาตให้ผูกมัด) Array.prototype.rotateRight = function( n ) { …

11
ฉันจะเพิ่มรายการในอาร์เรย์ Java แบบไดนามิกได้อย่างไร
ใน PHP คุณสามารถเพิ่มองค์ประกอบในอาร์เรย์แบบไดนามิกได้ดังต่อไปนี้: $x = new Array(); $x[] = 1; $x[] = 2; หลังจากนี้จะเป็นอาร์เรย์เช่นนี้$x{1,2} มีวิธีทำคล้าย ๆ กันใน Java หรือไม่?

โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.