問76
頻出度★☆☆
複数のデータが格納されているスタックからのデータの取出し方として, 適切なものはどれか。
这道题的解析和你的作答记录。
複数のデータが格納されているスタックからのデータの取出し方として, 適切なものはどれか。
与存入顺序无关、能取出任意位置的数据,这是「数组」等可通过下标直接访问的数据结构的特征。栈始终只能从最上面取出,所以错误。
正解 栈是「后进先出(LIFO)」的数据结构。把数据压入的操作称为 push,取出的操作称为 pop,pop 时总是从最上面(即最后 push 的最新数据)取出。因此「最后存入的数据最先取出」(选项イ)才是正确的取出方式。可以想象把盘子一摞摞叠起来、每次都从最上面取的情形,就容易理解了。
「最先存入的数据最先取出」是「先进先出(FIFO)」,这是对「队列(等待队列)」的描述。它的取出顺序与栈相反,所以错误。
按数据所带键的优先级取出,这是「优先级队列(优先队列)」的思路。栈的取出顺序只由存入的先后关系决定,而不是优先级,所以错误。