字典序的概述

 我来答
勤俊誉0el
2016-05-27 · 超过64用户采纳过TA的回答
知道答主
回答量:191
采纳率:50%
帮助的人:59.9万
展开全部

数字也可以作为特别的字符串...这种情让樱况下...如果我们用字典序进行比较...就有可能会出现下面这种情况...
100<1000..(加引号的目的是为了区别数字..与数字串..)
事实上呢.在计算机里...我们会这么看..和之前一样...我们会首先比较第一个字符...
这里1='1'..(已经可以看到区别了..在数中..数字因为位置的不同会有不同的意义..而这里.这种分别变的不一样了...)
..一步比较...还没有办法分辨出它们的大小...只好再比较之后的数...
这种情况回直到最后一次尝试...第一个字符串已经空掉之前...
如果硬要比较的话...
空格的ascii码值是32.(Ascii码还是用两位十六进制表示比较合适)
‘0’的ASCII码值是48 所以‘100’<'1000'
例子:依次比字母, 如boat < boot <
cap < card < cat < to < too< two < up
字典序如下:
设P是1~n的一个全排列:p=p1p2......pn=p1p2......pj-1pjpj+1......pk-1pkpk+1......pn
1)从排列碧滑猛的右端开始,找出第一个比右边数字小的数字的序号j(j从左端开始计算),即 j=max{i|pi<pi+1}
2)在pj的右边的数字中,找出所有比pj大的数中最小的数字pk,即 k=max{i|pi>pj}(右边的数从右至左是递增的,因此k是所有大于pj的数字中序号最大者)
3)对换pj,pk
4)再将pj+1......pk-1pkpk+1......pn倒转得到排列p'=p1p2.....pj-1pjpn.....pk+1pkpk-1.....pj+1,这就是排列p的悔桥下一个排列。

已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式