python里面什么是贪婪? 什么是贪婪?

\u5173\u4e8epython\u6b63\u5219\u8868\u8fbe\u5f0f\u7684\u8d2a\u5a6a\u6a21\u5f0f\u548c\u61d2\u60f0\u6a21\u5f0f

\u56e0\u4e3a\u4f60\u540e\u9762\u52a0\u4e86.jpg\uff0c\u90a3\u4e48\u5b83\u4e00\u76f4\u8981\u5339\u914d\u5230\u672b\u5c3e\uff0c\u6240\u4ee5\u7ed3\u679c\u662f\u4e00\u6837\u7684

\u4e3e\u4e2a\u4f8b\u5b50
\u5b57\u7b26\u4e32"abcd"
\u90a3\u4e48"a.*"\u5339\u914d\u7684\u662f"abcd"
"a.*?"\u5339\u914d\u7684\u662f"a"
"a.*?d"\u5339\u914d\u7684\u662f"abcd"
"a.*d"\u5339\u914d\u7684\u662f"abcd"

\u8d2a\u5a6a\u662f\u6700\u771f\u5b9e\u7684\u8d2b\u7a77\uff0c\u7ed9\u4e88\u662f\u6700\u771f\u5b9e\u7684\u5bcc\u6709\u2014\u2014\u65e0\u8bba\u5728\u4ec0\u4e48\u65f6\u5019\u7ed9\u4e88\u6bd4\u7d22\u53d6\u90fd\u8981\u91cd\u8981\u3002
\u5982\u679c\u6709\u4e86\u8d2a\u6b32\uff0c\u5c31\u4f1a\u6709\u4e89\u6597\uff0c\u5c31\u4f1a\u6709\u6124\u6012\uff0c\u5c31\u4f1a\u5931\u53bb\u7406\u667a\u3002\u8d2a\u5a6a\u6b63\u662f\u73b0\u4ee3\u4eba\u7684\u6700\u5927\u7f3a\u9677\u548c\u75db\u82e6\u7684\u6700\u4e3b\u8981\u539f\u56e0\u3002\u6240\u4ee5\uff0c\u5728\u751f\u6d3b\u5b9e\u8df5\u4e2d\uff0c\u6267\u8457\u8ffd\u6c42\u800c\u4e0d\u8d2a\u5a6a\u662f\u4e00\u79cd\u751f\u5b58\u667a\u6167\uff0c\u7ed9\u4e88\u800c\u4e0d\u7d22\u53d6\u5219\u662f\u4e00\u79cd\u4eba\u751f\u6001\u5ea6\u3002\u6267\u8457\u8ffd\u6c42\uff0c\u53ca\u65f6\u7ed9\u4e88\uff0c\u5408\u7406\u800c\u4e0d\u8fc7\u5206\uff0c\u6b63\u5e38\u800c\u4e0d\u6781\u7aef\uff0c\u5229\u5df1\u800c\u4e0d\u5bb3\u4eba\u3002\u6709\u4e9b\u9752\u5c11\u5e74\u56e0\u4e3a\u8d2a\u5a6a\uff0c\u60f3\u5f97\u5230\u66f4\u591a\u7684\u4e1c\u897f\uff0c\u5374\u628a\u73b0\u5728\u7684\u6240\u6709\u90fd\u5931\u6389\u4e86\u3002\u6709\u4e9b\u9752\u5c11\u5e74\u5374\u5e38\u5e38\u7ed9\u4e88\uff0c\u53cd\u800c\u5f97\u5230\u4e86\u66f4\u591a\u2026\u2026

Python里面的贪婪算法(又称贪心算法)是指,在对问题求解时,总是做出在当前看来是最好的选择。也就是说,/不从整体最优上加以考虑,他所做出的是在某种意义上的局部最优解。

贪心算法不是对所有问题都能得到整体最优解,关键是贪心策略的选择,选择的贪心策略必须具备无后效性,即某个状态以前的过程不会影响以后的状态,只与当前状态有关。

基本思路

思想

贪心算法的基本思路是从问题的某一个初始解出发一步一步地进行,根据某个优化测度,每一步都要确保能获得局部最优解。每一步只考虑一个数据,他的选取应该满足局部优化的条件。若下一个数据和部分最优解连在一起不再是可行解时,就不把该数据添加到部分解中,直到把所有数据枚举完,或者不能再添加算法停止 。贪心算法(又称贪婪算法)是指,在对问题求解时,总是做出在当前看来是最好的选择。也就是说,不从整体最优上加以考虑,他所做出的是在某种意义上的局部最优解。

贪心算法不是对所有问题都能得到整体最优解,关键是贪心策略的选择,选择的贪心策略必须具备无后效性,即某个状态以前的过程不会影响以后的状态,只与当前状态有关。

基本思路

思想

贪心算法的基本思路是从问题的某一个初始解出发一步一步地进行,根据某个优化测度,每一步都要确保能获得局部最优解。每一步只考虑一个数据,他的选取应该满足局部优化的条件。若下一个数据和部分最优解连在一起不再是可行解时,就不把该数据添加到部分解中,直到把所有数据枚举完,或者不能再添加算法停止 。贪心算法(又称贪婪算法)是指,在对问题求解时,总是做出在当前看来是最好的选择。也就是说,不从整体最优上加以考虑,他所做出的是在某种意义上的局部最优解。

贪心算法不是对所有问题都能得到整体最优解,关键是贪心策略的选择,选择的贪心策略必须具备无后效性,即某个状态以前的过程不会影响以后的状态,只与当前状态有关。

基本思路

思想

贪心算法的基本思路是从问题的某一个初始解出发一步一步地进行,根据某个优化测度,每一步都要确保能获得局部最优解。每一步只考虑一个数据,他的选取应该满足局部优化的条件。若下一个数据和部分最优解连在一起不再是可行解时,就不把该数据添加到部分解中,直到把所有数据枚举完,或者不能再添加算法停止 。



题主你好,

 你说的应该是python中正则表达式里的贪婪匹配, 存在这种叫法是因为加号,问号,星号等符号它们通常表示的并不是字面意思.

拿加号来说,  +号在正则里表示匹配它前面那个字符一次或多次:

-----例子-----

a+ 即可以匹配aa, 也可以匹配aaaaa...无数个a //从这个例子理解一下+号可以匹配前面字符一次或多次

-----

正是因为有像加号这样的可以用来动态匹配的字符存在于正则中, 才引出了贪婪匹配和非贪婪匹配的概念.

所以最终在面对一道题目时,如给你一个正则a+,然后再给你一个字符串aaaa,让你找出正则a+的贪婪匹配和非贪婪匹配结果分别是多少时, 根据+号的定义找到它的两个极限, 1到尽可能多, 所以在本例中非贪婪匹配+号匹配的就是1个a, 而贪婪匹配+号匹配的就是3个a.

=====

写在最后: 上面只是用+号来引出贪婪匹配与非贪婪匹配, 可能你现在去用我上面说的a+去匹配aaaa这个例子去看是理解了, 但正则这个东西有的时候确实需要题主多练几道题, 然后去思考一下.我在学的时候也是, 某些情况怎么也转不过来弯. 自己根据实际结果使用相应的概念去套一下看看能不能理解, 如果实在不能理解就去网上找相关的话题, 不同的人描述时举的例子以及思路不同, 可能某个人说的就对你路了.

希望可以帮到题主, 欢迎追问.




  • python璇█鍩虹鐭ヨ瘑鏄浠涔?
    绛旓細Linux鎿嶄綔绯荤粺 锛歀inux甯哥敤鍛戒护銆佺紪杈戝伐鍏枫乿im/Pycharm 鏁版嵁缁撴瀯涓庣畻娉 锛氶摼琛ㄣ佹爤鍜岄槦鍒椼佹爲鍜屼簩鍙夋爲銆佹煡鎵炬帓搴 IO缃戠粶缂栫▼锛氭枃浠舵搷浣溿佸瓧鑺傛祦璇诲啓銆佺綉缁滃崗璁佸鎺 瀛椼乀CP/UDP 骞跺彂缂栫▼锛氬杩涚▼銆佽繘绋嬫睜銆佽繘绋嬮氫俊銆佸绾跨▼銆佺嚎绋嬮攣銆佸浠诲姟骞跺彂銆両O妯″瀷銆佸崗绋 Python 姝e垯琛ㄨ揪寮忥細姝e垯琛ㄨ揪寮忋璐┆妯...
  • python re ?:鐨勬剰鎬
    绛旓細涓嶆崟鑾峰垎缁勭殑鎰忔濓紝鏁翠釜姝e垯琛ㄨ揪寮忕殑鎰忔濇槸abc鐨勮嚦灏戜竴娆$殑缁勫悎锛+鏄椽濠鍖归厤锛屽敖閲忓缁勶紝棰樼洰涓缁撴灉鍏9涓瓧姣嶏級銆傚鏋滀笉鍔?:鍒欐墍鏈塧bc锛3涓瓧姣嶏級閮借鏀惧湪缁撴灉閲銆
  • M₄鍍忚繖鏍风殑鏁板瓧涓嬫爣鎬庝箞鐢ㄦ鍒欒〃杈惧紡鍖归厤涓
    绛旓細姝e垯琛ㄨ揪寮忛氬父鐢ㄤ簬鍦ㄦ枃鏈腑鏌ユ壘鍖归厤鐨勫瓧绗︿覆銆Python閲鏁伴噺璇嶉粯璁鏄椽濠鐨(鍦ㄥ皯鏁拌瑷閲屼篃鍙兘鏄粯璁ら潪璐┆),鎬绘槸灏濊瘯鍖归厤灏藉彲鑳藉鐨勫瓧绗;闈炶椽濠殑鍒欑浉鍙,鎬绘槸灏濊瘯鍖归厤灏藉彲鑳藉皯鐨勫瓧绗︺備緥濡:姝e垯琛ㄨ揪寮"ab*"濡傛灉鐢ㄤ簬鏌ユ壘"abbbc",灏嗘壘鍒"abbb"銆傝屽鏋滀娇鐢ㄩ潪璐┆鐨勬暟閲忚瘝"ab*?",灏嗘壘鍒"a"銆 1.3. 鍙嶆枩鏉犵殑鍥...
  • (python璇█)涓浠涔姝e垯琛ㄨ揪寮忕殑 璐┆鍖归厤妯″紡 姣 闈炶椽濠ā寮 寰楀埌鐨勫尮 ...
    绛旓細涓嶆竻妤氫綘鐨璐┆妯″紡鐨勬鍒欐槸鎬庝箞鐨勶細.*(a.*?a).* or .*?(a.*a).* or .*(a.*a).浣犵粰鐨勪緥瀛愬尮閰嶅苟娌℃湁闂 .*? 鍖归厤鐨勭┖ a.*?a 鍖归厤鐨刟qwertya .* 鍖归厤鐨刟ple 浣犲彲浠ヨ瘯璇曠粰姣忔姝e垯閮藉姞涓垎缁勭劧鍚庢墦鍗版瘡涓垎缁勭殑鍖归厤缁撴灉锛岀劧鍚庝慨鏀规鍒欎负璐┆鍜岄潪璐┆鍒嗗埆鐪嬬湅缁撴灉銆傝繖鏍...
  • python 姝e垯琛ㄨ揪寮.*? 鏄浠涔鎰忔?
    绛旓細鍒嗗紑鏉ヨ锛1銆. 鍖归厤浠绘剰闄ゆ崲琛岀鈥淺n鈥濆鐨勫瓧绗︼紱2銆*琛ㄧず鍖归厤鍓嶄竴涓瓧绗0娆℃垨鏃犻檺娆★紱3銆+鎴*鍚庤窡锛熻〃绀洪潪璐┆鍖归厤锛屽嵆灏藉彲鑳藉皯鐨勫尮閰嶏紝濡*锛熼噸澶嶄换鎰忔锛屼絾灏藉彲鑳藉皯閲嶅锛4銆 .*? 琛ㄧず鍖归厤浠绘剰鏁伴噺鐨勯噸澶嶏紝浣嗘槸鍦ㄨ兘浣挎暣涓尮閰嶆垚鍔熺殑鍓嶆彁涓嬩娇鐢ㄦ渶灏戠殑閲嶅銆傚锛歛.*?b鍖归厤鏈鐭殑锛屼互a寮濮...
  • python 姝e垯琛ㄨ揪寮 groups鍜実roup鏈浠涔鍖哄埆
    绛旓細1), ...)瀵逛綘缁欑殑渚嬪瓙锛歮 = re.match("([abc])+", "abc")浣犵殑+鍙峰湪鎷彿澶栭潰銆傛嫭鍙锋渶澶氬尮閰嶅埌涓涓瓧绗︼紝瑕佷箞鏄痑锛 瑕佷箞鏄痗锛岃繖涓python寮曟搸鍖归厤鐨勬槸鏈熬鐨刢銆傝宮.group() == m.group(0) 杩欎釜杩斿洖鐨勬槸鏁翠釜鍖归厤鐨勫瓧绗︿覆"abc".鍏充簬鎹曡幏鍨嬫嫭鍙峰湪姝e垯琛ㄨ揪寮閲岀殑鐢ㄦ硶锛屽弬瑙佺浉鍏虫枃妗c
  • 瀛Python姝e垯琛ㄨ揪寮,杩欎竴绡囧氨澶熶簡
    绛旓細闈璐┆閲嶅 杩欏尮閰嶆渶灏忕殑閲嶅娆℃暟 锛氱敤鍦嗘嫭鍙峰垎缁 鍙嶅悜寮曠敤 杩欎笌浠ュ墠鍖归厤鐨勭粍鍐嶆鍖归厤 锛氬鎷╂柟妗 python|perl 锛 鍖归厤鈥減ython鈥濇垨鈥減erl鈥漴ub(y|le) 锛 鍖归厤 鈥渞uby鈥 鎴 鈥渞uble鈥Python(!+|?) 锛 鈥淧ython鈥濆悗璺熶竴涓垨澶氫釜! 杩樻槸涓涓?閿氱偣 杩欓渶瑕佹寚瀹氬尮閰嶄綅缃傚甫鎷彿鐨勭壒娈婅娉 寮璇惧惂...
  • Python涓瀹氫箟鍑芥暟榛樿鍙傛暟鍊肩殑浣跨敤娉ㄦ剰浜嬮」?
    绛旓細杩欎釜渚嬪瓙杩樹粙缁嶄簡 in 鍏抽敭瀛椼傚畠娴嬪畾搴忓垪涓槸鍚﹀寘鍚煇涓‘瀹氱殑鍊笺傞粯璁ゅ煎湪鍑芥暟 瀹氫箟 浣滅敤鍩熻瑙f瀽锛屽涓嬫墍绀:i = 5 def f(arg=i):print(arg)i = 6 f()灏嗕細杈撳嚭 5銆傞噸瑕佽鍛: 榛樿鍊煎彧琚祴鍊间竴娆°傝繖浣垮緱褰撻粯璁ゅ兼槸鍙彉瀵硅薄鏃朵細鏈夋墍涓嶅悓锛屾瘮濡傚垪琛ㄣ佸瓧鍏告垨鑰呭ぇ澶氭暟绫荤殑瀹炰緥銆備緥濡傦紝涓嬮潰鐨...
  • Python鏍稿績缂栫▼鐨勫浘涔︾洰褰
    绛旓細绗1閮ㄥ垎銆Python鏍稿績绗1绔犮娆㈣繋鏉ュ埌Python涓栫晫绗2绔犮蹇熷叆闂ㄧ3绔犮Python鍩虹绗4绔犮Python瀵硅薄绗5绔犮鏁板瓧绗6绔犮搴忓垪锛氬瓧绗︿覆銆佸垪琛ㄥ拰鍏冪粍绗7绔犮鏄犲儚鍜岄泦鍚堢被鍨嬬8绔犮鏉′欢鍜屽惊鐜9绔犮鏂囦欢鍜岃緭鍏ヨ緭鍑虹10绔犮閿欒鍜屽紓甯哥11绔犮鍑芥暟鍜屽嚱鏁板紡缂栫▼绗12绔犮妯″潡绗13绔犮闈㈠悜瀵硅薄缂栫▼绗14绔犮...
  • python 姝e垯琛ㄨ揪寮 闈璐┆鍖归厤闂
    绛旓細tim@tim-1215B:~$ python Python 2.7.2+ (default, Oct 4 2011, 20:06:09)[GCC 4.6.1] on linux2 Type "help", "copyright", "credits" or "license" for more information.>>> import re >>> data = 'Thu Feb 15 17:46:04 2007::[email protected]:: 2341123-6-8'>...
  • 扩展阅读:onedrive在线看视频 ... python免费源码网站 ... python入门 ... photoshop永久免费版 ... 学python后到底能干什么 ... mindmaster永久免费版 ... photoshop免费网站入口 ... python编程免费网站 ... python初学编程必背 ...

    本站交流只代表网友个人观点,与本站立场无关
    欢迎反馈与建议,请联系电邮
    2024© 车视网