Python实现简单查找最长子串功能示例


Posted in Python onFebruary 26, 2019

本文实例讲述了Python实现简单查找最长子串功能。分享给大家供大家参考,具体如下:

题目选自edX公开课 MITx: 6.00.1x Introduction to Computer Science and Programming 课程 Week2 的Problem Set 1的第三题。下面是原题内容。

Assume s is a string of lower case characters.

Write a program that prints the longest substring of s in which the letters occur in alphabetical order. For example, ifs = 'azcbobobegghakl', then your program should print

Longest substring in alphabetical order is: beggh
In the case of ties, print the first substring. For example, if s = 'abcbcd', then your program should print

Longest substring in alphabetical order is: abc
For problems such as these, do not include raw_input statements or define the variable s in any way. Our automated testing will provide a value of s for you - so the code you submit in the following box should assume s is already defined. If you are confused by this instruction, please review L4 Problems 10 and 11 before you begin this problem set.

代码如下:

# -*- coding:utf-8 -*-
#! python2
#判断一个字符串内的字母是否是按字母表顺序
# 如IsStrIncre('abbcdg') 返回 True
# IsStrIncre('abbadg') 返回 False
# 如果只有一个字符,也返回False
def IsStrIncre(s):
  for cnt in range(len(s) - 1):
    if len(s) == 1:
      return False
    elif s[cnt] > s[cnt+1]:
      return False
  return True
s = 'abajsiesnwdw'# example code
substr = ''
for length in range(1, len(s)+1):
  firstflag = True # a flag to remember the first string that satisfied the requirements
           # and ignore the strings satisfied the requirements but appeared after
  for cnt in range(len(s)-length+1):
    if IsStrIncre(s[cnt: cnt+length]):
      if firstflag:
        substr = s[cnt: cnt+length]
        firstflag = False
print 'Longest substring in alphabetical order is: ' + substr

运行结果:

Longest substring in alphabetical order is: ajs

希望本文所述对大家Python程序设计有所帮助。

Python 相关文章推荐
Python天气预报采集器实现代码(网页爬虫)
Oct 07 Python
python3+PyQt5+Qt Designer实现堆叠窗口部件
Apr 20 Python
python与caffe改变通道顺序的方法
Aug 04 Python
python实现微信自动回复及批量添加好友功能
Jul 03 Python
Python爬虫实现的根据分类爬取豆瓣电影信息功能示例
Sep 15 Python
python 操作hive pyhs2方式
Dec 21 Python
Python日志syslog使用原理详解
Feb 18 Python
django 模版关闭转义方式
May 14 Python
python mysql自增字段AUTO_INCREMENT值的修改方式
May 18 Python
Python如何读写二进制数组数据
Aug 01 Python
python 绘制场景热力图的示例
Sep 23 Python
python 实现百度网盘非会员上传超过500个文件的方法
Jan 07 Python
基于Python实现用户管理系统
Feb 26 #Python
python selenium firefox使用详解
Feb 26 #Python
Django实现学员管理系统
Feb 26 #Python
Python实现读取txt文件中的数据并绘制出图形操作示例
Feb 26 #Python
Django实现学生管理系统
Feb 26 #Python
python爬取微信公众号文章的方法
Feb 26 #Python
python下载微信公众号相关文章
Feb 26 #Python
You might like
PHP学习之PHP变量
2006/10/09 PHP
php自定义函数之递归删除文件及目录
2010/08/08 PHP
PHP SPL标准库之接口(Interface)详解
2015/05/11 PHP
PHP jQuery+Ajax结合写批量删除功能
2017/05/19 PHP
PHP代码重构方法漫谈
2018/04/17 PHP
laravel 解决crontab不执行的问题
2019/10/22 PHP
用jquery实现学校的校历(asp.net+jquery ui 1.72)
2010/01/01 Javascript
js中if语句的几种优化代码写法
2011/03/12 Javascript
一个JQuery写的点击上下滚动的小例子
2011/08/27 Javascript
html页面显示年月日时分秒和星期几的两种方式
2013/08/20 Javascript
jquery.post用法之type设置问题
2014/02/24 Javascript
深入理解JavaScript系列(40):设计模式之组合模式详解
2015/03/04 Javascript
jQuery实现当前页面标签高亮显示的方法
2015/03/10 Javascript
Jquery树插件zTree实现菜单树
2017/01/24 Javascript
jQuery制作图片旋转效果
2017/02/02 Javascript
基于js中this和event 的区别(详解)
2017/10/24 Javascript
js实现HTML中Select二级联动的实例
2018/01/05 Javascript
Vue自定义属性实例分析
2019/02/23 Javascript
详解js中的原型,原型对象,原型链
2020/07/16 Javascript
JS实现按比例缩小图片宽高
2020/08/24 Javascript
python对DICOM图像的读取方法详解
2017/07/17 Python
python实现简单http服务器功能
2018/09/17 Python
在IPython中进行Python程序执行时间的测量方法
2018/11/01 Python
Python处理mysql特殊字符的问题
2020/03/02 Python
使用css3实现的tab选项卡代码分享
2014/12/09 HTML / CSS
CSS3 text-shadow实现文字阴影效果
2016/02/24 HTML / CSS
Banana Republic欧盟:美国都市简约风格的代表品牌
2018/05/09 全球购物
英国高街电视:High Street TV
2018/05/22 全球购物
通信工程专业毕业生推荐信
2013/12/25 职场文书
弘扬雷锋精神活动演讲稿
2014/03/04 职场文书
劲霸男装广告词
2014/03/21 职场文书
质监局领导班子对照检查材料思想汇报
2014/09/27 职场文书
大学生创业事迹材料
2014/12/30 职场文书
Python机器学习实战之k-近邻算法的实现
2021/11/27 Python
海弦WR-800F
2022/04/05 无线电
CSS中使用grid布局实现一套模板多种布局
2022/07/15 HTML / CSS