所以我几乎是 Ruby 的一个 n00b,我已经整理了一个代码来解决 MinCut 问题(对于作业,是的 - 我整理并测试的那部分代码),我不能弄清楚如何读取文件并将其放入数组数组中。我有一个要读取的文本文件,其中列的长度不同,如下所示
1 37 79 164
2 123 134
3 48 123 134 109
我想将它读入一个二维数组,其中每一行和每一列都被分割,每一行进入一个数组。因此,上述示例的结果数组将是:
[[1, 37, 79, 164], [2, 123, 134], [3, 48, 123, 134, 109]]
我读取文本文件的代码如下:
def read_array(file, count)
int_array = []
File.foreach(file) do |f|
counter = 0
while (l = f.gets and counter < count ) do
temp_array = []
temp_array << l.to_i.split(" ")
int_array << temp_array
counter = counter + 1
end
end
return int_array
end
任何帮助是极大的赞赏!
另外,如果有帮助,我目前遇到的错误是“block in read_array”:私有方法 'gets' called for # ”
我已经尝试了一些事情,但得到了不同的错误消息......