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错误提示:[Errno 24] Too many open files的分析与解决
Feb 16 Python
python自定义异常实例详解
Jul 11 Python
python使用筛选法计算小于给定数字的所有素数
Mar 19 Python
使用sklearn之LabelEncoder将Label标准化的方法
Jul 11 Python
python创造虚拟环境方法总结
Mar 04 Python
Python数据类型之Set集合实例详解
May 07 Python
flask应用部署到服务器的方法
Jul 12 Python
Python 使用元类type创建类对象常见应用详解
Oct 17 Python
Django实现WebSSH操作物理机或虚拟机的方法
Nov 06 Python
python+selenium+chrome批量文件下载并自动创建文件夹实例
Apr 27 Python
如何用 Python 处理不平衡数据集
Jan 04 Python
python缺失值的解决方法总结
Jun 09 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学习笔记(毕业设计)
2012/02/21 PHP
探讨:如何编写PHP扩展
2013/06/13 PHP
解析PHP中一些可能会被忽略的问题
2013/06/21 PHP
关于查看MSSQL 数据库 用户每个表 占用的空间大小
2013/06/21 PHP
php实现字符串反转输出的方法
2015/03/14 PHP
phpcms配置列表页以及获得文章发布时间
2017/07/04 PHP
PHP使用标准库spl实现的观察者模式示例
2018/08/04 PHP
PHP从尾到头打印链表实例讲解
2018/09/27 PHP
js与jquery中获取当前鼠标的x、y坐标位置的代码
2011/05/23 Javascript
jquery实现鼠标悬浮停止轮播特效
2020/08/20 Javascript
Bootstrap教程JS插件弹出框学习笔记分享
2016/05/17 Javascript
jquery之别踩白块游戏的简单实现
2016/07/25 Javascript
JS实现“隐藏与显示”功能(多种方法)
2016/11/24 Javascript
Angular 常用指令实例总结整理
2016/12/13 Javascript
JavaScript轻松创建级联函数的方法示例
2017/02/10 Javascript
es7学习教程之fetch解决异步嵌套问题的方法示例
2017/07/21 Javascript
Bootstrap模态对话框中显示动态内容的方法
2018/08/10 Javascript
Vue实现一个图片懒加载插件
2019/03/11 Javascript
在Vue.js中使用TypeScript的方法
2020/03/19 Javascript
vantUI 获得piker选中值的自定义ID操作
2020/11/04 Javascript
使用Python中的线程进行网络编程的入门教程
2015/04/15 Python
python django事务transaction源码分析详解
2017/03/17 Python
Python中文编码知识点
2019/02/18 Python
Python中numpy模块常见用法demo实例小结
2019/03/16 Python
Python3 xml.etree.ElementTree支持的XPath语法详解
2020/03/06 Python
python如何快速生成时间戳
2020/07/21 Python
一款纯css3实现的颜色渐变按钮的代码教程
2014/11/12 HTML / CSS
Amara德国:家居饰品、设计师品牌和豪华礼品
2019/05/20 全球购物
国庆节文艺活动方案
2014/02/03 职场文书
教师党的群众路线教育实践活动个人整改方案
2014/10/31 职场文书
2014幼儿园家长工作总结
2014/11/10 职场文书
幼儿园万圣节活动总结
2015/05/05 职场文书
Python生成九宫格图片的示例代码
2021/04/14 Python
Oracle更换为MySQL遇到的问题及解决
2021/05/21 Oracle
Python中time与datetime模块使用方法详解
2022/03/31 Python
关于windows server 2012 DC 环境 重启后蓝屏代码:0xc00002e2的问题
2022/05/25 Servers