Python如何确保随机产生的两个数,第一个比第二个大

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Python如何确保随机产生的两个数,第一个比第二个大相关的知识,希望对你有一定的参考价值。

以下代码运行通过:

import random

number1 = random.randint(30, 50)
number2 = random.randint(0, 20)

print('\\n第一个随机数是:', number1)
print('\\n第二个随机数是:', number2)

运行效果:


参考技术A 如果随机范围不同,或者没有重叠的话,就跟楼下的一样。
如果随机范围一样或有重叠的话,如都是(0, 9),或者一个是(6, 9), 一个是(0, 9),无法确保,可通过循环来判断,直到第一个比第二个大。
import random
m = random.randint(0, 9)
n = random.randint(0, 9)
while True:
if m > n:
break
else:
n = random.randint(0, 9)
print(m)
print(n)
参考技术B from random import randint
a = randint(1, 100)
b = randint(1, a)
print(a, b)

排序算法之冒泡排序

1.基本思路

    (1)比较数组中两个相邻的元素。如果第一个比第二个大,则交换。
    (2)对每一对相邻元素作同样的工作,从开始第一对到结尾的最后一对,例如:第一个树和第二个树比较,第一个数大于第二个则交换,然后第二个和第三个比较,第二个大则交换…… 最终                将最大数移至最后。
     (3)重复以上步骤,完成n-1次

2.时间复杂的

      (1)最好情况:序列是升序排列,在这种情况下,需要进行的比较操作为(n-1)次。交换操作为0次。即O(n)

      (2) 最坏情况:序列是降序排列,那么此时需要进行的比较共有n(n-1)/2次。交换操作数和比较操作数一样。即O(n^2)

      (3)渐进时间复杂度(平均时间复杂度):O(n^2)

3.代码实现

 1 namespace BubbleSortProgram
 2 {
 3     public class Program
 4     {
 5         static void Main(string[] args)
 6         {
 7             Encoding.RegisterProvider(CodePagesEncodingProvider.Instance);
 8             int[] arry = { 9,7,12,6,8,1};
 9             Console.WriteLine("-------------排序前--------------");
10             for (int i = 0; i < arry.Length; i++)
11             {
12                 Console.Write(arry[i]+" ");
13             }
14             BubbleSort(arry);
15             Console.WriteLine("\\n-------------排序后--------------");
16             for (int i = 0; i < arry.Length; i++)
17             {
18                 Console.Write(arry[i]+" ");
19             }
20             Console.ReadKey();
21          }
22 
23         /// <summary>
24         /// 冒泡排序
25         /// </summary>
26         /// <param name="arry"></param>
27         public static  void BubbleSort(int[] arry)
28         {
29             if (arry.Length == 0 || arry == null)
30                 return;
31             for (int i = 0; i < arry.Length - 1; i++)
32             {
33                 for (int j = 0; j < arry.Length - i - 1; j++)
34                 {
35                     if (arry[j] > arry[j + 1])
36                     {
37                         var temp = arry[j+1];
38                         arry[j + 1] = arry[j];
39                         arry[j] = temp;
40                     }
41                 }
42             }
43         }
44     }
45 }

运行结果:

技术分享

 



以上是关于Python如何确保随机产生的两个数,第一个比第二个大的主要内容,如果未能解决你的问题,请参考以下文章

python两个10以内的随机整数以第一个随机整数为半径第二个随机整数为高,计算并输出圆锥体的体积

python两个10以内的随机整数以第一个随机整数为半径第二个随机整数为高,计算并输出圆锥体的体积

android如何实现产生个随机数,并计算其中的两个数?

四则运算 Python

从来不纠结算法,冒泡排序这样优化?

Erlang生成符合正态分布,截断正态分布随机数