python基础算法

面向对象三大基本特征: 封装,继承,多态

二分法/折半 查找:若存在返回下标,若不存在,返回-1

a = [1, 2, 3, 4, 5, 7, 9, 11, 34, 43, 167, 345, 678, 899]
s = 5
t= -1
length = len(a)
start = 0
end =length -1
while end >= start:
    half = (end+start)//2
    if a[half] > s:
        end = half
    elif a[half] < s :
        start = half + 1
    else:
        t = half
        break
print(t)

九九乘法表

for  i in range(1,10):
    for j in range(1,i+1):
        print(i,"X",j,"=",j*i,end="\t")
    print()

冒泡排序

a = [3,5,7,1,4,34,678,2,167,899,43,11,9,345]
b = len(a)
for i in range(b-1,0,-1):
    for j in range(i):
        if a[j] > a[j+1]:
            a[j],a[j+1] =a[j+1],a[j]
print(a)

1到100内的和

s = 0
for i  in range(1,101):
    s= s+ i
print(s)

替换

a = "我是xxx,我来自wwww"
a = a.replace("我是xxx,我来自wwww","我是小明来自上海")
print(a)

逢七过一

for i in range(1000):
    if(i % 7 == 0):
        print("过")
    elif(i % 10 == 7):
        print("过")
    else:
        print(i)

逢七过二

for i in range(1000):
    if(i % 7 == 0):
        print("过")
        continue
    if(i % 10 == 7):
        print("过")
        continue
    print(i)

找出200以内的回数

#找出200以内的"回数"(即:从左向右,从右向左,都是一样的数,比如:131, 141)
def is_palindrome(n):
    if n < 10:
        return True
    s = str(n)
    for i in range(0, int(len(s) / 2)):
        if s[i] == s[-i - 1]:
            return True
    return False

print(list(filter(is_palindrome, range(1, 201))))


# 或者


def is_palindrome(n):
    s1 = str(n)
    s2 = list(reversed(s1))
    return list(s1) == s2


print(list(filter(is_palindrome, range(1, 201))))
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 1.斐波那契数列 1 1 2 3 5 8 13 2.二分法查找 3.冒泡排序 4.快速排序 5.多线程 6.多进程
    L丶Y1122阅读 1,093评论 0 0
  • 题目 找出一个字符串的最长字符串,要求该字符串中没有重复的字符。注意点:考虑空字符等特殊情况例子:输入: "abc...
    __XY__阅读 365评论 0 0
  • 前言 课程源于英特尔提供的学习资料。人工智能学习目录 内容介绍 第一课也是第一周学习的内容,学习使用jupyter...
    易兒善阅读 1,500评论 0 11
  • DAY 01 JAVA简述 Java是由SUN公司在1995年推出的一门高级编程语言,是现今服务器端的首选编程语言...
    周书达阅读 1,014评论 0 0
  • 1.面向对象的特征有哪些方面? 抽象:抽象是将一类对象的共同特征总结出来构造类的过程,包括数据抽象和行为抽象两方面...
    浪花易逝阅读 662评论 0 5