标签: string-math

获取两个其他字符串之间的中点字符串

是否有可用的库或代码片段,可以使用两个字符串并返回两个字符串之间的精确或近似中点字符串?

优选地,代码将是Python.

背景:

这似乎是表面上的一个简单问题,但我有点挣扎:

  • 显然,"A"和"C"之间的中点字符串将是"B".
  • 使用base64编码,"A"和"B"之间的中点字符串可能是"Ag"
  • 使用UTF-8编码,我不确定有效的中点是什么,因为中间字符似乎是一个控制字符: U+0088 c2 88 <control>

实际应用:

我问的原因是因为我希望编写map-reduce类型算法来读取数据库中的所有条目并处理它们.数据库中的主键是UTF-8编码的字符串,具有随机的字符分布.我们使用的数据库是Cassandra.

希望从数据库中获得最低密钥和最高密钥,然后通过找到中点将其分成两个范围,然后通过查找每个中间点将这两个范围分成两个较小的部分,直到我有几千个部分,然后我可以异步读取每个部分.

如果字符串是base-16编码的示例:(某些中点是近似值):

Starting highest and lowest keys:  '000'                'FFF'
                                   /   \              /       \
                              '000'     '8'         '8'       'FFF'
                              /   \     /  \       /  \       /   \
Result:                  '000'    '4' '4'  '8'   '8'  'B8'  'B8'  'FFF'
(After 3 levels of recursion)

python string string-math

14
推荐指数
1
解决办法
1105
查看次数

标签 统计

python ×1

string ×1

string-math ×1