伪代码中基于索引的编号[关闭]

问题描述 投票:0回答:2

我正在学习一门计算机科学,我的文本显示了数组伪代码声明,一些从1开始,其他一些0.有人可以告诉我为什么会这样。请注意我正在学习Python。

DECLARE List1 : ARRAY[1:3] OF STRING  // 3 elements in this list 
DECLARE List2 : ARRAY[0:5] OF INTEGER // 6 elements in this list 
DECLARE List3 : ARRAY[1:100] OF INTEGER // 100 elements in this list 
DECLARE List4 : ARRAY[0:25] OF STRING // 26 elements in this list
python arrays
2个回答
0
投票

有些语言使用其中一种或两种,有些算法更容易用其中一种表达。例如,教科书堆使用基于1的索引。 C和Python使用基于0的索引,Pascal和Ada让你选择,Lua和Matlab使用1为基础。实际上,您最需要知道在您编写的语言中使用哪个。

https://en.wikipedia.org/wiki/Comparison_of_programming_languages_(array)列出了几种语言中使用的约定。不在其中的一点琐事是找到数组中元素数量的C方法:sizeof(array)/sizeof(array[0])。它很少被使用,因为C的调用约定通过将数组降级为指针来剥离大小信息。


0
投票

在像Pascal这样的语言中,您实际上决定了索引的下限和上限。这是文本使用的符号。

在Python和大多数其他编程语言中,第一个元素总是在索引0处,当声明一个数组时,你只能说出元素的数量N

在一些设计糟糕的编程语言中,第一个元素是索引1。

© www.soinside.com 2019 - 2024. All rights reserved.