总结:数列的一些方法

数列的方法有那么几种:list.append(obj) ---------添加元素到数列的末尾

             list.insert(index,obj)---------按照index下标插入元素

            list.pop(index)------------对应index的下标元素被删除,默认是删除最后一个元素

            list.count(obj)------------统计obj元素的个数

            list.remove(obj)----------删除重复且排在前面的元素

            list.severse()----------反向数列中的元素

            list.sort()----------数列元素排序

            list.index(obj)--------查看该元素的下标是多少

            list2.exten(list1)-------在list2数列结尾中添加list1数列中的元素

例子:

1)list.append(obj)

list1 = [1,2,3,4,‘中国‘,‘美国‘]

list1.append(5)

print(list1)  

# 运行时输出结果

 [1,2,3,4,‘中国‘,‘美国‘,5]

2) list.insert(2,‘加拿大‘)

list2 =  [1,2,3,4.0,‘中国‘,‘美国‘]

list2.insert(2,‘加拿大‘)

print(list2)

# 运行时输出结果

 [1,2,‘加拿大‘,3,4,‘中国‘,‘美国‘]

3)list.pop()

list3 = [1,2,‘加拿大‘,3,4,‘中国‘,‘美国‘]

print(list3.pop())

#输出结果

[1,2,‘加拿大‘,3,4,‘中国‘]

print(list3.pop(-1))#输出结果
[1,2,‘加拿大‘,3,4,‘中国‘]

print(list3.pop(3))

#输出结果
[1,2,3,4,‘中国‘,‘美国‘]

4)list.count(jbo)

list4 = [1,2,3,3,4,‘中国‘,3]

list4.count(3)

#输出结果

3

5)list.remove(obj)

list5 = [1,2,‘加拿大‘,3,4,‘中国‘,‘美国‘]
list5.remove(‘美国‘)
print(list5) # 输出结果 [1,2,‘加拿大‘,3,4,‘中国‘]

6)list.severse()

list7 = [1,3,4,2,‘a‘,‘r‘,‘h‘]

list6.reverse()

print(list6)

#输出结果
[‘h‘, ‘r‘, ‘a‘, 2, 4, 3, 1]

7)list.sort()

list7 = [2,4,6,3,5,1]
list7.sort()
print(list7)

#输出结果

[1, 2, 3, 4, 5, 6]

8)list.index(obj)

list8 =  [‘a‘, ‘b‘, ‘c‘, ‘d‘, 1, 2, 3, 4, 5, 6]

list8.index(‘b‘)

# 输出结果

1

  

9)list2.exten(list1)

a = [1, 2, 3, 4, 5, 6]
b = [‘a‘,‘b‘,‘c‘,‘d‘]

b.extend(a)

print(b)

# 输出结果

[‘a‘, ‘b‘, ‘c‘, ‘d‘, 1, 2, 3, 4, 5, 6]

 

时间: 2024-10-20 10:41:01

总结:数列的一些方法的相关文章

3.斐波那契数列的高效方法

斐波那契数列的递归方法众所周知,但是递归也不是一个高效的解决方法. 从下边的调用图可以看出来: 其中,对于1和2的计算重复了多次. 因此如果对数列中已经计算过的数字进行存储这样就可以只计算一次每个数值,达到高效的目的,计算时间也相对减少了. 1 known = {0:0,1:1} 2 3 def fibonacci(n): 4 if n in known: 5 return known[n] 6 7 res = fibonacci(n-1)+fibonacci(n-2) 8 known[n] =

斐波那契数列多种实现方法

#include "iostream" #include "queue" #include "cmath" using namespace std; int fib1(int index) //递归实现 { if(index<1) { return -1; } if(index==1 || index==2) return 1; return fib1(index-1)+fib1(index-2); } int fib2(int index

特征根法求通项+广义Fibonacci数列找循环节 - HDU 5451 Best Solver

Best Solver Problem's Link Mean: 给出x和M,求:(5+2√6)^(1+2x)的值.x<2^32,M<=46337. analyse: 这题需要用到高中的数学知识点:特征根法求递推数列通项公式. 方法是这样的: 对于这题的解法: 记λ1=5+2√6,λ2=5-2√6,则λ1λ2=1,λ1+λ2=10 根据韦达定理可以推导出:λ1,λ2的特征方程为 x^2-10x+1=0 再使用该特征方程反向推导出递推公式为:a[n]=10*a[n-1]-a[n-2] 再由特征根

fibonacci数列为什么那么重要,所有关于数学的书几乎都会提到?【转自知乎】

转自知乎王希的回答.原文链接:http://www.zhihu.com/question/28062458/answer/39763094 一句话先回答问题:因为斐波那契数列在数学和生活以及自然界中都非常有用. 下面我就尽我所能,讲述一下斐波那契数列. 一.起源和定义 斐波那契数列最早被提出是印度数学家Gopala,他在研究箱子包装物件长度恰好为1和2时的方法数时首先描述了这个数列.也就是这个问题: 有n个台阶,你每次只能跨一阶或两阶,上楼有几种方法? 而最早研究这个数列的当然就是斐波那契(Le

斐波拉契数列、楼梯问题、奶牛问题

斐波拉契数列:波那契数列,又称黄金分割数列,指的是这样一个数列:0.1.1.2.3.5.8.13.21.34.--在数学上,斐波纳契数列以如下被以递归的方法定义:F(0)=0,F(1)=1,F(n)=F(n-1)+F(n-2)(n≥2,n∈N*)[from 百度百科 http://baike.baidu.com/link?url=8LKtKTAllUGDMe610zIO0DAjS3CCeAOpXiCFvH_Y47_I_XDRgzyGcrzsodd1OHO726FJNPWkqzkQC7PIuGu_

斐波那契数列与跳台阶问题以及变态跳台阶

1.跳台阶问题:(其实就是很纯粹的斐波那契数列问题)比较倾向于找规律的解法,f(1) = 1, f(2) = 2, f(3) = 3, f(4) = 5,  可以总结出f(n) = f(n-1) + f(n-2)的规律,但是为什么会出现这样的规律呢?假设现在6个台阶,我们可以从第5跳一步到6,这样的话有多少种方案跳到5就有多少种方案跳到6,另外我们也可以从4跳两步跳到6,跳到4有多少种方案的话,就有多少种方案跳到6,其他的不能从3跳到6什么的啦,所以最后就是f(6) = f(5) + f(4):

斐波那契数列的$O(\logN)$求法

欢迎来访 介绍求斐波那契数列时间复杂度为\(O(\log N)\)的做法之前,我们先看一下快速幂. 快速幂 题目链接 快速幂是数论中非常基础的算法. 当我们要求\(a^b mod p, (1 \le a, b, p \le 10^9)\)时,如果是朴素做法,时间复杂度为\(O(N)\)显然会超时,而快速幂能够做到的是将时间复杂度降到\(O(\log b)\). 做法 首先预处理出:\(a^{2^0}, a^{2^1}, a^{2^2}, a^{2^3}, ..., , a^{2^{\log b}

算法--归并排序(链表)

归并排序 http://blog.csdn.net/morewindows/article/details/6678165 归并排序是建立在归并操作上的一种有效的排序算法.该算法是采用分治法(Divide and Conquer)的一个非常典型的应用. 归并操作: http://www.tuicool.com/articles/iy2QRn6 归并操作 归并操作(merge),也叫归并算法,指的是将两个顺序序列合并成一个顺序序列的方法. 如:设有数列 [6,202,100,301,38,8,1]

自制数据挖掘工具分析北京房价 (二) 数据清洗

上一节我们通过爬虫工具爬取了近七万条二手房数据,那么这一节就对这些数据进行预处理,也就是所谓的ETL(Extract-Transform-Load) 一.ETL工具的必要性 数据分析的前提是数据清洗.不论如何高大上的算法,遇到错误数据,一个异常抛出来,绝对尸横遍野.而你不能指望核心算法为你处理错误或者短缺的数据.所以,数据清洗(ETL)就变得必不可少了. 如果数据分析是炒菜阶段,那么清洗就是洗菜,绝对是非常重要的一环. 而实际上,ETL工具可以很简单,也可以很复杂.简单到只需要把字符串转换为数字