算法应用
一些小算法小技巧
忘川之水&
不要一味地低头拉车,还要抬头仰望生活。
展开
-
水仙花数的总结概括以及各种代码实现(最详细)
生活中一些常用的规则 需要我们掌握,比如水仙花数,斐波纳契法则等文章目录水仙花数定义附:其他位数的自幂数名字求取方法C实现C++ 实现Java 实现Python 实现水仙花数百度百科解释: 水仙花数(Narcissistic number)也被称为超完全数字不变数(pluperfect digital invariant, PPDI)、自恋数、自幂数、阿姆斯壮数或阿姆斯特朗数(Armstrong number),水仙花数是指一个 3 位数,它的每个位上的数字的 3次幂之和等于它本身(例如:1^.原创 2020-12-12 11:21:47 · 4128 阅读 · 0 评论 -
Python中实现字符串的反转
文章目录原始数据:方法一:使用字符串切片方法方法二:使用列表的reverse方法方法三:for循环方法四:使用栈方法五: 循环反向迭代法原始数据:s=‘abcde’方法一:使用字符串切片方法result = s[::-1]print(s)print(result)方法二:使用列表的reverse方法l = list(s)l.reverse()result="".join(l)print(result)#第二种l = list(s)result = "".join(l[::原创 2020-12-07 16:07:03 · 325 阅读 · 0 评论 -
Python中[:2]、[:,-1]、[-1]、[:-1]、[::-1]、[2::-1]如何使用
数据准备import numpy as npX = np.array([[0,1],[2,3],[4,5],[6,7],[8,9],[10,11],[12,13],[14,15],[16,17],[18,19]])print(X)形成矩阵1.print(X[-1]) ###取最后一个元素2.print(X[:-1]) ### 除了最后一个取全部3.print(X[::-1]) ### 取从后向前(相反)的元素4.print(X[2::-1]) ### 取从下标为2的元素翻转读取原创 2020-12-07 15:25:36 · 13618 阅读 · 0 评论 -
求斐波那契序列
斐波那契序列【题目】:斐波那契序列是数字序列,其中每个连续数字是前两个数字的和。经典的斐波那 契序列开始于 1,1,2,3,5,8,13题目肯定不陌生,就是不知道大家思路可否能想想起来python版本:def fib(N): if (N <= 1):#1时为1 return N return fib(N-1)+fib(N-2) #递归循环调用if __name__ == '__main__': n = 8; print(fib(n));原创 2020-12-05 08:54:24 · 491 阅读 · 0 评论 -
Python实现 有1、2、3、4个数字,能组成多少个互不相同且无重复数字的三位数?都是多少?
【题目】:有1、2、3、4个数字,能组成多少个互不相同且无重复数字的三位数?都是多少?分析:四个数字组成三位数,把三位数分为个、十、百位,将1、2、3、4填入其中,去掉不满足条件的剩下就是结果。python代码实现:def threenum(): count=0 #计数 nums=[] #初始化 for i in range(1,5): #百位循环 for j in range(1,5):#十位循环 for x in range(原创 2020-12-02 20:30:13 · 12376 阅读 · 0 评论 -
Python:识别一个字符串中,是否包含唯一的字符
如果字符串中的字符都是唯一的,则返回 True,如 ‘123’。如果字符串中的字符有重复,则返回 False,如 ‘1223’。a = '1233'if len(set(a)) == len(a): print('True')else: print('False')set去重 再判断长度。 简单易懂,没想到就做不出来。...原创 2020-12-01 19:45:56 · 2004 阅读 · 1 评论 -
利用map()函数,把用户输入的不规范的英文名字,变为首字母大写,其他小写的规范名字以及Map函数讲解
利用map()函数,把用户输入的不规范的英文名字,变为首字母大写,其他小写的规范名字。输入:[‘adam’, ‘LISA’, ‘barT’].输出:[‘Adam’, ‘Lisa’, ‘Bart’]。分析:从题目中可以得到就是单词的大小写问题,这是我们就要想用什么函数可以改变大小写问题,然后利用map()函数,就需要明确map函数的用法。Python map() 函数描述map() 会根据提供的函数对指定序列做映射。第一个参数 function 以参数序列中的每一个元素调用 function原创 2020-12-01 19:28:38 · 4174 阅读 · 2 评论 -
基于python实现十大排序算法(保证能看懂)
文章目录一. 冒泡排序(Bubble Sort)二、选择排序(Selection Sort)三、插入排序(Insertion Sort)四、希尔排序(Shell Sort)五、归并排序(Merge Sort)六、快速排序(Quick Sort)八、计数排序(Counting Sort)九、桶排序(Bucket Sort)十、基数排序(Radix Sort)一. 冒泡排序(Bubble Sort)def bubble_sort(arr): for i in range(len(arr)-1):原创 2020-11-06 14:15:49 · 834 阅读 · 1 评论 -
基于Java的十大排序算法
文章目录一 、冒泡二、 快排三、直插四、 希尔五、选择六、归并七 、计数八、堆九 、桶十 、基数一 、冒泡 public static void main(String[] args) { int[] arr = new int[]{3, 5, 6, 7, 8, 2, 1}; int i,j; for ( i = 0; i <arr.length-1;i++) { for (j = 0; j<arr原创 2020-11-06 19:09:21 · 166 阅读 · 0 评论 -
基于scala实现十大排序算法
文章目录swap冒泡选择插入希尔归并快排计数桶基数堆主涵swap def swap(array: Array[Int], i: Int, j:Int): Unit ={ val tmp = array(i) array(i) = array(j) array(j) = tmp }冒泡 def bubblingSort(array: Array[Int]): Array[Int] ={ val arr = array for(i <- 1 until原创 2020-11-06 14:05:15 · 274 阅读 · 0 评论