ฉันมีคำถามนี้ในการทดสอบกลางภาคของหลักสูตร DSA:
พิจารณา Single Linked List ที่มี N โหนด (N > 8) วิธี f1() ได้รับการออกแบบมาเพื่อค้นหาโหนดที่ 8 ตั้งแต่เริ่มต้น และวิธี f2() ได้รับการออกแบบมาเพื่อค้นหาโหนดที่ 8 จากจุดสิ้นสุด ความซับซ้อนของเวลาของ f1() และ f2() คือข้อใด
เลือกหนึ่งอัน:
ก. ซ้ำแล้วซ้ำอีก)
ข. โอ(1) และโอ(1)
ค. O(1) และ O(N)
ง. โอ(N) และ โอ(1)
คำตอบที่ถูกต้องคือค. O(1) และ O(N) อย่างไรก็ตาม ฉันคิดว่าคำตอบที่ถูกต้องคือ ก. ฉันรู้ว่าถ้า N = 8 จะต้องใช้เวลา O(1) ในการค้นหาโหนดที่ 8 จากจุดเริ่มต้น (เพียงส่งคืนโหนดส่วนท้าย) แต่ในกรณีนี้ N > 8 ใครช่วยอธิบายสิ่งนี้ให้ฉันหน่อยได้ไหม
ขอขอบคุณล่วงหน้าสำหรับความช่วยเหลือที่คุณสามารถให้ได้