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基于pygame实现响应游戏中事件的方法(附源码)
Nov 11 Python
玩转python爬虫之cookie使用方法
Feb 17 Python
教你用Type Hint提高Python程序开发效率
Aug 08 Python
神经网络理论基础及Python实现详解
Dec 15 Python
对python同一个文件夹里面不同.py文件的交叉引用方法详解
Dec 15 Python
python 在指定范围内随机生成不重复的n个数实例
Jan 28 Python
用pyqt5 给按钮设置图标和css样式的方法
Jun 24 Python
python设置环境变量的作用和实例
Jul 09 Python
python 3.7.4 安装 opencv的教程
Oct 10 Python
详解Python修复遥感影像条带的两种方式
Feb 23 Python
python Cartopy的基础使用详解
Nov 01 Python
Python日志打印里logging.getLogger源码分析详解
Jan 17 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对象递归引用造成内存泄漏分析
2014/08/28 PHP
php使用ffmpeg向视频中添加文字字幕的实现方法
2016/05/23 PHP
游戏人文件夹程序 ver 3.0
2006/07/14 Javascript
jQuery 无刷新分页实例代码
2013/11/12 Javascript
在JavaScript中正确引用bind方法的应用
2015/05/11 Javascript
javascript实现动态标签云
2015/10/16 Javascript
jQuery中队列queue()函数的实例教程
2016/05/03 Javascript
JS 动态加载js文件和css文件 同步/异步的两种简单方式
2016/09/23 Javascript
JS获得多个同name 的input输入框的值的实现方法
2017/01/09 Javascript
对layui中表单元素的使用详解
2018/08/15 Javascript
详解webpack打包时排除其中一个css、js文件或单独打包一个css、js文件(两种方法)
2018/10/26 Javascript
jquery登录的异步验证操作示例
2019/05/09 jQuery
JQuery实现简单的复选框树形结构图示例【附源码下载】
2019/07/16 jQuery
原生JavaScript实现随机点名表
2021/01/14 Javascript
[01:14:34]DOTA2上海特级锦标赛C组资格赛#2 LGD VS Newbee第一局
2016/02/28 DOTA
使用Python的Twisted框架实现一个简单的服务器
2015/04/16 Python
python中的随机函数小结
2018/01/27 Python
Python实现的三层BP神经网络算法示例
2018/02/07 Python
python如何读写json数据
2018/03/21 Python
Python实现的求解最小公倍数算法示例
2018/05/03 Python
Linux下Python安装完成后使用pip命令的详细教程
2018/11/22 Python
python获取指定日期范围内的每一天,每个月,每季度的方法
2019/08/08 Python
python实现京东订单推送到测试环境,提供便利操作示例
2019/08/09 Python
Python 实现取多维数组第n维的前几位
2019/11/26 Python
windows系统Tensorflow2.x简单安装记录(图文)
2021/01/18 Python
CSS3中媒体查询结合rem布局适配手机屏幕
2019/06/10 HTML / CSS
HTML5对比HTML4的主要改变和改进总结
2016/05/27 HTML / CSS
英国领先的在线药房:Pharmacy First
2017/09/10 全球购物
GUESS Factory加拿大:牛仔裤、服装及配饰
2019/09/20 全球购物
芭比波朗加拿大官方网站:Bobbi Brown Cosmetics CA
2020/11/05 全球购物
高中生的学习总结自我鉴定
2013/10/26 职场文书
房屋买卖协议书范本
2014/04/10 职场文书
2014年教师学期工作总结
2014/11/08 职场文书
2014年幼儿园教研工作总结
2014/12/04 职场文书
办公用品质量保证书
2015/05/11 职场文书
Javascript的promise,async和await的区别详解
2022/03/24 Javascript