我正在阅读旧的MS问题并遇到过这个问题:
pic有一个与之关联的位图和一个256长的原始数组 调色板。现在我们有一个更改列表,其中映射了一些旧颜色 到新的颜色。编写代码以更改原始调色板。现在如果 必须更改原始位图,编写将扫描的代码 pic以及更改的调色板阵列。代码应为O(N) 而不是O(N ^ 2)。原始调色板的结构可以更改为 做到这一点。
我无法弄清楚确切的问题。如果有人可以说明问题和标准方法,那将会很棒。非常感谢。
答案 0 :(得分:0)
我认为应该通过与招聘人员的一些互动来解决这类问题。
我的方法如下:
for each *element* in *image data*
if *palette value* in *element* contains *old value*
update *palette value* with *new value*
end
process *element*
end
以上可能没有更新某些值(对于图像中不存在某些调色板值的情况),但我认为这是处理此问题的简单方法。
此致
答案 1 :(得分:0)
只需根据更改列表替换颜色即可修改调色板数组。