「java贪婪」JAVA贪婪算法卡车运货
本篇文章给大家谈谈java贪婪,以及JAVA贪婪算法卡车运货对应的知识点,希望对各位有所帮助,不要忘了收藏本站喔。
本文目录一览:
- 1、请问一下,括号里面abc应该选哪一个?
- 2、正则表达式 “!\\^\\.\\*\\$!([^!]+)!” 是什么意思?
- 3、关于java api 里面的split()方法
- 4、java 有一个带有seg个标记的尺子,求最小的加上newmark个新标记分开的距离的最大值。贪婪算法
- 5、今天你写下的那个JAVA题是用贪婪算法写的吗?你能帮我解释一下思路吗?
请问一下,括号里面abc应该选哪一个?
你想得到abc 那就改成m.group(0),或者m.group() 还是说你是不明白group(1)为啥是c 我是java的,匹配出来也是c,看了看group的介绍,我的理解是括号里面是[abc]其中的一个,匹配到a的时候,满足记录a,执行+,发现b满足记录,执行+,发现c满足记录,下一个不满足,这时候括号里面的记录的就是c 因为默认是贪婪匹配,你可以改成([abc])+?,懒惰匹配,就会把a,b,c都输出
正则表达式 “!\\^\\.\\*\\$!([^!]+)!” 是什么意思?
在java中要进行转义,所以转化成标准正则表达式后就是“ !\^\.\*\$!([^!]+)!”
正则表达式中\^
表示就是^的本身的意思,\.
\$
,同理得知;所以最后你的表达式表示!^.$!
开头后面跟任意非!的字符串重复一次到无穷次,然后以!结束。例如:1321312!^.$!
123!123123。
如果想让字符串只能是!^.$!
123!
,两边没有其他字符的,
那么在你正则的首加上^尾加上$。
关于java api 里面的split()方法
用o去截取的时候遇到第一个o后获得数组第一项"b"遇到第二个o的时候因为此时第一个o已经被截掉了,所以获得第二项"",同理,最后的两个o截取之后的结果原本也应该有一个"",但是API文档也说了,所得的数组中不包括结尾空字符串,所以最后一个""就被抹掉了,剩下的结果就变成了{ "b", "", ":and:f" },
你所说的结果{ "b", ":and:f" }应该是用"o+"去切割的结果.
java 有一个带有seg个标记的尺子,求最小的加上newmark个新标记分开的距离的最大值。贪婪算法
nummark[seg+1] = 1;
数组是从0开始的,seg+1明显越界了,应该是nummark[seg] = 1;
同理,length - pos[seg+1]也越界了
你理清楚数组的范围的思路,问题就会解决的了
今天你写下的那个JAVA题是用贪婪算法写的吗?你能帮我解释一下思路吗?
题目是什么,我记不太清了
第一个for循环是循环天数10,因为说了10天之内完成
第二个for循环是循环A的人数,至于小于等于那个数,是取极值的时候,当B=0时,取的
第三个for循环同理A
里面的if判断,是题目里面的限制条件,满足这些条件的时候就输出
就是这么简单的啊
类似的有百钱百鸡,百分百蛋的问题。
java贪婪的介绍就聊到这里吧,感谢你花时间阅读本站内容,更多关于JAVA贪婪算法卡车运货、java贪婪的信息别忘了在本站进行查找喔。
发布于:2022-12-28,除非注明,否则均为
原创文章,转载请注明出处。