我有一个包含表示平面图(VLSI 布局)的波兰符号的字符串,它包含类似:“1234VHV56HV”的内容。(仅供参考,这意味着:垂直分离 3 和 4,然后水平分离结果和 2,然后垂直分离结果和 1,水平分离 5 和 6,然后垂直分离前两个结果。)
假设字符串变量被称为:PolishNotation。包含的字母只有“V”代表垂直或“H”代表水平。
我正在尝试应用一种称为“模拟退火”的算法来更改波兰表示法,所以我想随机选择一个索引(当然小于 PolishNotation.Length),如果这个索引指向一个字母('V ' 或 'H'),我想得到包含它的字母链,然后将每个 'V' 更改为 'H' 并将每个 'H' 更改为 'V'......换句话说:补充链!
- 例如:假设 PolishNotation = "1234VHV56HV" 并且随机索引 = 5,所以结果是 "H"... 我想检索 "VHV" 并将其补充为:"1234HVH56HV"。
- 另一个例子:假设 PolishNotation = "1234VHV56HV" 并且随机索引 = 9,所以结果是 "H"...我想检索 "HV" 并将其补为:"1234VHV56VH"。
- 另一个例子:假设 PolishNotation = "1234VHV56HV" 并且随机索引 = 6,所以结果是 "V"...我想检索 "VHV" 并将其补全为:"1234HVH56HV"。
我希望我清楚自己...有什么建议吗?我正在使用 C#.net