首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

单调递增的数字

单调递增的数字 给定一个非负整数N,找出小于或等于N的最大的整数,同时这个整数需要满足其各个位数上的数字是单调递增。当且仅当每个相邻位数上的数字x和y满足x 递增的。...10) * 10 - 1 = 1330 - 1 = 1329 // 第二次循环就是 1300 - 1 = 1299 } return num; }; 思路 整体思路就是将数字当作字符串...通常来说可以把数字作为字符串来遍历处理,上面的题解是使用纯数字的方式去做,首先定义i作为标记记录遍历到到的位置,之后定义num作为待处理的数字,定义循环只要能够继续取出两位数就继续循环,这是循环的终止条件...,此外能够使用乘法的地方就尽量不要使用除法,在js中int32如果不能够整除则会自动转双精度64,所以在很多地方都需要强制转数值为int32,之后取出两位数,这里~~是使用位运算强制转了整型,在之后将i...* 10定义到下一位,如果低一位上的值大于大于高一位上的值,那么就将数值在第i位以后的值都变成0,然后减1即可达到上述的将此位减1以及之后的数字都变为9,可以参考上边的示例,在循环结束后返回处理的数字即可

1.5K20
  • 您找到你想要的搜索结果了吗?
    是的
    没有找到

    贪心算法:单调递增的数字

    738.单调递增的数字 给定一个非负整数 N,找出小于或等于 N 的最大的整数,同时这个整数需要满足其各个位数上的数字是单调递增。...(当且仅当每个相邻位数上的数字 x 和 y 满足 x 递增的。)...空间复杂度:O(1) 贪心算法 题目要求小于等于N的最大单调递增的整数,那么拿一个两位的数字来举例。...例如:98,一旦出现strNum[i - 1] > strNum[i]的情况(非单调递增),首先想让strNum[i - 1]--,然后strNum[i]给为9,这样这个整数就是89,即小于98的最大的单调递增整数...这么说有点抽象,举个例子,数字:332,从前向后遍历的话,那么就把变成了329,此时2又小于了第一位的3了,真正的结果应该是299。 所以从前后向遍历会改变已经遍历过的结果!

    71530

    awk命令的使用

    Ubuntu14.04 目的:想用awk来统计某个文本中单词出现的次数,并以一定的格式输出结构 通常,awk逐行处理文本。awk每接收文件的一行,然后执行相应的命令来处理。...搜索统计单词“law”的个数 $ awk -F : '/law/{count++} END{print "the count is ",count}' /etc/legal the count is...3 找到指定单词,自定义变量count自增,最后输出语句和count值 命令sort,把各行按首字母排列顺序重新排列起来 sort -nr,每行都以数字开头,按数字从达到小,排列各行 uniq -c,统计各行出现的次数...,并把次数打印在每行前端 awk参数 NF - 浏览记录的域的个数 综合起来,命令就是 awk -F' ' '{for(i=1;i<=NF;i=i+1){print $i}}' /etc/legal...| sort|uniq -c|sort -nr|awk -F' ' '{printf("%s %s\n",$2,$1)}' 统计/etc/legal中单词出现次数,并以“单词 次数”格式输出结果

    53420

    使用awk过滤行

    我们通过管道将其传递给,uniq因为默认行为将打印每行的列数,并且由于每行具有相同的列数,因此uniq会将其减少为一个数字。 打印字段和搜索 我们还可以使用 awk来选择和打印文件的一部分。...有很多方法可以在 awk中格式化和构建输出。查看awk用户指南上的打印部分以获取更多信息。 现在我们已经选择了几列来打印出来,让我们使用awk 来搜索一个特定的东西——我们知道数据集中存在的一个数字。...而不是匹配一个唯一的数字。...在这种情况下,awk 将返回与模式匹配的每一行。在我们上面的例子中,这个数字在数据文件中出现一次,但我们可以使用正则表达式或范围模式来代替。...linux之awk使用技巧 使用awk和正则表达式过滤文件中的文本或字符串

    3.4K20

    【Linux篇】--awk的使用

    一、前述 awk是一个强大的文本分析工具。相对于grep的查找,sed的编辑,awk在其对数据分析并生成报告时,显得尤为强大。...简单来说awk就是把文件逐行的读入,(空格,制表符)为默认分隔符将每行切片,切开的部分再进行各种分析处理。...二、具体 1、基础知识点 awk -F '{pattern + action}' {filenames} 支持自定义分隔符 支持正则表达式匹配 支持自定义变量,数组  a[1]  a[tom]  map...(key) 支持内置变量 ARGC               命令行参数个数 ARGV               命令行参数排列 ENVIRON            支持队列中系统环境变量的使用...,而且在所有行开始前添加列名name,shell,在最后一行添加"blue,/bin/nosh"(cut,sed) awk -F':' 'BEGIN{print "name,shell"} {print

    1.7K20
    领券