首页 > 编程语言 >Python学习笔记51:暂停篇

Python学习笔记51:暂停篇

时间:2024-08-03 21:25:45浏览次数:14  
标签:arr swapped Python 51 冒泡排序 int 笔记 public

随便写点

最近因为公司项目的原因,学习进度变慢很多,但是也勉强支撑着把小游戏的项目写了个大概,其实后续很多的功能基本都是慢慢添加就可以,掌握了函数的调用,磕磕碰碰终究还是能把功能写好的,可能就是代码质量差一点,但是这个没必要过于纠结,写的多了看的多了,慢慢的就会进步。

一种学习方法不一定适合所有人,我个人认为学习前期还是以实现功能为主,因为当你使用代码实现你想象中的功能的时候,有一种特别的感觉会支撑着你前进,学习。

关于Python知识的学习,不幸的是目前只能到这里了,幸运的是已经学完了基础部分,连带游戏项目也写了个大概。后续的学习就要靠大家自己了。如果有空,我也会捡起来看看,但是像现在这样每天学习一部分是比较困难的。

接下来的一段时间里,一方面是整理一下自己个人的博客网站,一方面是准备复习一些面试题再刷一下算法题这两方面的事情,想必有经验的已经知道是为了啥了。

最后分别使用Python与Java写一段冒泡排序的算法代码,作为Python篇的结尾和Java篇的开头请诸君鉴赏。

感谢!!!

python冒泡排序:

def bubble_sort(arr):
    n = len(arr)
    # 遍历所有数组元素
    for i in range(n):
        # Last i elements are already in place
        for j in range(0, n-i-1):
            # 遍历从 0 到 n-i-1
            # 如果当前元素大于下一个元素,则交换它们
            if arr[j] > arr[j+1]:
                arr[j], arr[j+1] = arr[j+1], arr[j]


# 示例
arr = [20, 24, 8, 3, 21, 22, 55]
bubble_sort(arr)
print("Sorted array is:", arr)

Java冒泡排序

public class BubbleSort {
    public static void main(String[] args) {
        int[] arr = {20, 24, 8, 3, 21, 22, 55};
        bubbleSort(arr);
        System.out.println("Sorted array is:");
        printArray(arr);
    }

    // 冒泡排序方法
    public static void bubbleSort(int[] arr) {
        int n = arr.length;
        boolean swapped;
        for (int i = 0; i < n - 1; i++) {
            swapped = false;
            for (int j = 0; j < n - i - 1; j++) {
                if (arr[j] > arr[j + 1]) {
                    // 交换 arr[j] 和 arr[j+1]
                    int temp = arr[j];
                    arr[j] = arr[j + 1];
                    arr[j + 1] = temp;
                    swapped = true;
                }
            }
            // 如果在这一轮中没有发生交换,则数组已经排序完成
            if (!swapped) break;
        }
    }

    // 打印数组的方法
    public static void printArray(int[] arr) {
        for (int value : arr) {
            System.out.print(value + " ");
        }
        System.out.println();
    }
}

新的篇章见。

标签:arr,swapped,Python,51,冒泡排序,int,笔记,public
From: https://blog.csdn.net/weixin_48668564/article/details/140897050

相关文章

  • python pip怎么用
    pip是Python包管理工具,该工具提供了对Python包的查找、下载、安装、卸载的功能。目前如果你在python.org下载最新版本的安装包,则是已经自带了该工具。Python2.7.9+或Python3.4+以上版本都自带pip工具。pip官网:https://pypi.org/project/pip/你可以通过以......
  • python pip怎么安装包
    按Win+R键打开运行窗口,输入“cmd”,再按回车键,打开命令行窗口。找到pip安装路径。Python2/Python3安装路径是相同的,都在x:\Pythonxx\Scripts路径下。拖动pip主应用程序到命令行窗口。输入“install+模块/包名”,注意中间要有空格。然后按回车键,窗口中会显示......
  • Datawhale AI夏令营(笔记③)
    #DatawhaleAI夏令营##AI##夏令营#    今天的主要内容是学习如何用Transformer建模SMILES进行反应产率预测。Task2(即笔记②)中,我们学习使用RNN建模SMILES,且发现了RNN在处理这类问题的局限性。那么今天,我们就跟着本节内容,看看Transformer是如何解决RNN的缺陷的。一......
  • 灰狼优化算法(GWO)与长短期记忆网络(LSTM)结合的预测模型(GWO-LSTM)及其Python和MATLAB实现
    ####一、背景在现代数据科学和人工智能领域,预测模型的准确性和效率是研究者和工程师不断追求的目标,尤其是在时间序列预测、金融市场分析、气象预测等领域。长短期记忆(LSTM)网络是一种解决传统递归神经网络(RNN)在长序列学习中存在的梯度消失和爆炸问题的有效模型。LSTM能够保持......
  • 灰狼优化算法(GWO)与门控循环单元(GRU)结合的预测模型(GWO-GRU)及其Python和MATLAB实现
    ####一、背景深度学习已成为解决复杂时序数据预测问题的重要工具。在众多神经网络架构中,门控循环单元(GatedRecurrentUnit,GRU)凭借其在捕捉时间序列数据中的长程依赖性和相对较低的计算复杂度而受到广泛关注。此外,优化算法在深度学习模型的训练中扮演着至关重要的角色。灰......
  • 用Python写的贪吃蛇游戏。
    冽:编写一个贪吃蛇游戏。这里提供一个简单的Python贪吃蛇游戏示例。使用标准库 pygame 来实现图形界面:首先,确保你已经安装了 pygame 库。如果没有安装,可以通过以下命令安装:pipinstallpygame然后,你可以使用以下代码来创建一个基本的贪吃蛇游戏:importpygameimport......
  • Noip 真题笔记
    Noip2023A事实上只需要比较最大一个和最小一个就可以了。注意排序后的字符串是递增或递减的,是用递增字符串与其他的递减字符串比较。B考场不会。综述:对DFS的详细描述:Noip2022悲惨的一年,对这一年真题有问题别问学长。A签到。当时我写了个三方还艹过去了。对于三......
  • python系列&deep_study系列:【Conda】常用命令和常用镜像源修改
    【Conda】常用命令和常用镜像源修改【Conda】常用命令和常用镜像源修改前言1,创建和修改镜像源2,使用镜像源3,修改pip源方法一方法二3,修改conda源方法一方法二4,查看和还原5,常用的镜像源:【Conda】常用命令和常用镜像源修改前言记录常......
  • 矩阵树定理学习笔记
    用来求和一个图的生成树个数相关的算法,时间复杂度\(O(n^3)\)。你要会求一个矩阵的行列式,这是和行列式有关的前置知识。定理阐述对于无向图定义度数矩阵\(D_{i,j}=[i=j]\deg_i\),其中\(\deg_i\)表示\(i\)的度数。定义邻接矩阵为\(E_{i,j}\)为边\((i,j)\)的个数。定......
  • 笔记——AVL树
    和普通的二叉搜索树的区别:普通的二叉搜索树只满足左子树小于个根,右子树大于根,不会进行平衡(降低高度)这就导致可能退化,这样查找插入数据的时间复杂度就是o(n)而为了防止二叉搜索树退化,AVL树引入了平衡因子的概念,使树的每一层都是满的,只有树的一层满后才插入下一层,利用平衡因......