深度学习的进展及其在各领域的应用

在这里插入图片描述

深度学习,作为人工智能的核心分支,近年来在全球范围内引起了广泛的关注和研究。它通过模拟人脑的学习机制,构建复杂的神经网络结构,从大量数据中学习并提取有用的特征表示,进而解决各种复杂的模式识别问题。

一、深度学习的基本原理与算法

深度学习基于神经网络,特别是深度神经网络(DNN),这些网络由多个处理层组成,能够学习数据的多层次表示。反向传播算法是深度学习中的一个核心算法,它根据输出层的误差,反向调整网络中每个神经元的权重,以达到最小化损失函数的目的。此外,卷积神经网络(CNN)和**循环神经网络(RNN)**等结构为处理图像、视频和序列数据等复杂输入提供了有效手段。

1. 深度神经网络(DNN)

深度神经网络(DNN)是深度学习的基础。它包含多个隐藏层,每个隐藏层都由多个神经元组成。这些神经元通过权重和偏置对输入信号进行线性变换,然后通过激活函数引入非线性因素,使得网络能够学习并逼近任意复杂的函数。

深度神经网络通过前向传播算法计算输出,然后通过反向传播算法根据输出与真实值之间的误差调整网络参数。反向传播算法基于梯度下降原理,通过计算损失函数对网络参数的梯度,沿着梯度的反方向更新网络参数,以最小化损失函数。

2. 卷积神经网络(CNN)

卷积神经网络(CNN)是专门用于处理具有类似网格结构数据的神经网络,如图像、语音信号等。CNN通过卷积层、池化层和全连接层等结构,能够有效地提取输入数据的局部特征,并通过逐层卷积和池化操作将低层次的局部特征组合成高层次的全局特征。

卷积层是CNN的核心部分,它通过卷积核对输入数据进行卷积操作,提取输入数据的局部特征。池化层则对卷积层的输出进行下采样操作,降低数据的维度并保留有用的信息。全连接层则对池化层的输出进行加权求和,得到最终的输出。

3. 循环神经网络(RNN)

循环神经网络(RNN)是专门用于处理序列数据的神经网络。与传统的神经网络不同,RNN具有记忆功能,能够处理任意长度的序列数据。它通过循环单元将上一时刻的隐藏状态和当前时刻的输入进行融合,得到当前时刻的隐藏状态和输出。

RNN在处理序列数据时,能够将序列中的信息进行编码,并保留在隐藏状态中。这使得RNN能够处理具有时序关系的数据,如文本、语音、视频等。但是,由于RNN存在梯度消失和梯度爆炸等问题,其在实际应用中受到一定的限制。为了克服这些问题,研究者提出了长短期记忆网络(LSTM)和门控循环单元(GRU)等改进结构。

4. 优化算法

除了基本的网络结构外,优化算法也是深度学习中的一个重要部分。梯度下降算法是最常用的优化算法之一,它通过计算损失函数对网络参数的梯度,沿着梯度的反方向更新网络参数。但是,传统的梯度下降算法存在收敛速度慢、容易陷入局部最优等问题。

为了改进梯度下降算法的不足,研究者提出了许多优化算法,如随机梯度下降(SGD)、动量梯度下降(Momentum)、自适应梯度算法(AdaGrad)、均方根传播算法(RMSProp)和自适应矩估计算法(Adam)等。这些优化算法通过引入动量、自适应学习率等机制,能够加速网络的收敛速度并提高训练效果。

深度学习的基本原理是通过构建深度神经网络模型,并利用大规模数据进行训练,从而学习到数据的内在规律和表示层次。在实际应用中,需要根据具体任务和数据特点选择合适的网络结构和优化算法,并进行充分的实验和调参以达到最佳效果。
在这里插入图片描述

二、深度学习的应用实例

1. 自然语言处理(NLP)

在自然语言处理领域,深度学习技术已经取得了显著的突破。基于深度学习的NLP模型能够处理复杂的语言现象,如词义消歧、句法结构分析、语义角色标注等。以下是一些具体的应用实例:

  • 机器翻译:基于深度学习的机器翻译模型,如Transformer架构,通过大量的双语语料库进行训练,能够实现高质量的自动翻译。这些模型利用编码器-解码器结构和注意力机制,将源语言的句子映射到目标语言的句子,同时保持语义的一致性。
  • 文本生成深度学习模型能够生成各种类型的文本,如新闻报道、小说、诗歌等。例如,GPT系列模型通过大规模的语言建模,能够生成流畅、连贯的文本段落。这些模型在内容创作、自动摘要、对话系统等领域具有广泛的应用前景。
  • 情感分析深度学习模型能够自动分析文本的情感倾向,如积极、消极或中立等。这些模型通常利用词嵌入技术和递归神经网络等结构,捕捉文本中的情感信息,并输出相应的情感标签。情感分析在社交媒体监测、产品评论分析等领域具有重要的应用价值。

2. 计算机视觉(CV)

在计算机视觉领域,深度学习技术已经取得了革命性的进展。以下是一些具体的应用实例:

  • 图像分类:基于深度学习的图像分类模型能够自动识别图像中的物体,并将其归类到预定义的类别中。这些模型通常利用卷积神经网络(CNN)进行特征提取和分类器设计,实现了高精度的图像分类。图像分类在智能相册管理、安全监控等领域具有广泛的应用。
  • 目标检测:目标检测模型能够同时识别图像中的多个物体,并给出它们的位置信息。这些模型通常利用区域提案网络(RPN)和CNN等结构进行物体检测和定位。目标检测在自动驾驶、智能安防等领域具有重要的应用价值。
  • 人脸识别:基于深度学习的人脸识别技术已经实现了高精度的人脸检测和识别。这些模型利用大规模的人脸数据集进行训练,能够处理各种复杂的人脸变化,如姿态、表情、光照等。人脸识别在身份验证、安全监控等领域具有广泛的应用前景。

3. 语音识别

在语音识别领域,深度学习技术也取得了显著的进展。以下是一些具体的应用实例:

  • 语音转文字:基于深度学习的语音识别模型能够将语音信号转换为文字。这些模型利用深度神经网络(DNN)和循环神经网络(RNN)等结构进行声学建模和语言建模,实现了高精度的语音转文字。语音转文字在智能助手、语音输入等领域具有广泛的应用价值。
  • 语音合成深度学习模型还能够将文字转换为自然的语音信号。这些模型通常利用序列到序列(Seq2Seq)架构和注意力机制进行文本到语音的映射。语音合成在智能音箱、语音导航等领域具有广泛的应用前景。

深度学习技术在自然语言处理、计算机视觉和语音识别等领域已经取得了显著的成果。随着技术的不断发展和创新,未来深度学习有望在更多领域发挥更大的作用,为人类社会的发展带来更加深远的影响。
在这里插入图片描述

三、深度学习的挑战与未来发展方向

1. 当前面临的挑战

数据标注成本高昂深度学习通常需要大量的标注数据来训练模型,但数据标注过程往往耗时且成本高昂。尤其是在一些专业领域,如医学影像分析、法律文档处理等,标注数据需要领域专家参与,进一步增加了成本。

模型泛化能力有限:尽管深度学习在某些任务上取得了很好的性能,但模型的泛化能力仍然有限。当测试数据与训练数据分布不一致时,模型性能往往会显著下降。

缺乏可解释性深度学习模型通常被视为“黑盒”,其内部工作原理难以解释。这使得人们在信任和使用模型时产生疑虑,尤其是在涉及重大决策的场景中,如医疗诊断和司法审判。

隐私泄露风险深度学习模型有可能泄露训练数据中的敏感信息。攻击者可以通过分析模型的输出或参数来推断训练数据中的某些信息,从而引发隐私泄露问题。

2. 未来发展方向

监督学习和自监督学习:为了降低对标注数据的依赖,无监督学习和自监督学习方法受到了越来越多的关注。这些方法能够从未标注数据中学习有用的表示,从而减少对标注数据的需求。

迁移学习:迁移学习旨在将从一个任务或领域中学到的知识迁移到其他相关任务或领域中。通过迁移学习,我们可以利用已有的标注数据来提升新任务或领域的性能,从而缓解数据标注成本高昂的问题。

强化学习强化学习是一种通过与环境交互来学习策略的方法。它不需要大量的标注数据,而是通过试错来学习。强化学习在自动驾驶、机器人控制等领域具有广阔的应用前景。

模型可解释性和透明度:为了提高深度学习模型的可解释性和透明度,研究者们正在开发新的模型结构和可视化技术。这些技术可以帮助人们更好地理解模型的决策过程,从而增加对模型的信任。

隐私保护技术:为了保护训练数据中的隐私信息,研究者们正在开发各种隐私保护技术,如差分隐私、联邦学习等。这些技术可以在保护隐私的同时,保证模型的性能不受太大影响。

高效和节能的硬件与算法:随着硬件性能的不断提升和算法的不断优化,深度学习将变得更加高效和节能。这将使得深度学习能够在更多领域得到应用,并推动其进一步发展。

深度学习虽然面临着诸多挑战,但随着技术的不断发展和创新,我们有理由相信它将在未来发挥更加重要的作用,为人类社会的发展带来更加深远的影响。
在这里插入图片描述

四、深度学习与机器学习的关系

深度学习是机器学习的一个子集,它专注于神经网络的使用。传统的机器学习算法,如决策树、支持向量机等,通常依赖于手工特征工程。而深度学习则通过自动学习数据的层次化表示来避免这一繁琐过程。尽管深度学习在某些任务上表现出色,但传统的机器学习算法在数据稀缺或解释性要求较高的场景下仍具有优势。

1. 深度学习是机器学习的一个子集

机器学习是一个广泛的领域,涵盖了许多不同的算法和技术。深度学习是机器学习领域中的一个分支,专注于使用神经网络,尤其是深度神经网络。这意味着所有深度学习算法都可以被视为机器学习算法,但并非所有机器学习算法都是深度学习算法。

2. 特征工程的差异

传统的机器学习算法,如决策树、支持向量机(SVM)、逻辑回归等,通常需要大量的手工特征工程。这意味着数据科学家需要花费大量时间和精力来选择和设计能够最好地描述数据的特征。

相比之下,深度学习算法能够自动学习数据的层次化表示。通过多层的神经网络结构,深度学习可以逐渐从原始数据中提取出越来越复杂的特征,而无需人工干预。这种自动特征学习的能力使得深度学习在许多任务上取得了显著的优势。

3. 数据依赖性和可解释性

深度学习算法通常在数据量较大时表现出色,因为它们需要大量的数据来训练复杂的神经网络模型。相比之下,一些传统的机器学习算法在数据量较小的情况下也能表现得相当不错。

此外,在可解释性方面,传统的机器学习算法通常更容易解释其决策过程。这使得它们在一些需要高度可解释性的领域,如医疗和金融,具有更大的优势。而深度学习模型由于其复杂的内部结构和大量的参数,往往被视为“黑盒”模型,其决策过程难以直观解释。

4. 应用场景

尽管深度学习在某些任务上取得了显著的优势,如图像识别、语音识别和自然语言处理等,但传统的机器学习算法在许多其他领域仍然具有广泛的应用。例如,在推荐系统、异常检测、时间序列分析和结构化数据预测等方面,传统的机器学习算法仍然发挥着重要作用。

深度学习和机器学习之间存在密切的关系,但它们在某些方面也存在明显的差异。深度学习作为机器学习的一个子集,专注于使用神经网络来自动学习数据的层次化表示,而传统的机器学习算法则更依赖于手工特征工程和可解释性。在实际应用中,我们需要根据具体任务和数据特点来选择合适的算法和技术。
在这里插入图片描述

五、深度学习与人类的智能交互

深度学习正在逐步改变人类与机器的交互方式。通过模拟人类的感知和认知过程,深度学习技术使得机器能够更自然地理解和回应人类的语言、姿态和情感。例如,智能音箱、自动驾驶汽车和虚拟助手等应用已经深入人们的日常生活。未来,随着脑机接口等前沿技术的发展,人类与深度学习系统的融合将更加紧密和智能。

深度学习技术的迅速发展和广泛应用正在深刻地改变人类与机器的交互方式。通过模拟人类的感知、认知和理解过程,深度学习使得机器能够更加自然地与人类进行交流和互动。

1. 自然语言交互

深度学习技术使得机器能够理解和生成自然语言文本,从而实现与人类的语言交互。例如,智能音箱和虚拟助手能够识别和理解人类的语音指令,并作出相应的回应。这种自然语言交互方式大大降低了人类与机器交流的门槛,使得更多人能够轻松地使用和享受智能服务。

2. 计算机视觉交互

深度学习在计算机视觉领域的应用使得机器能够识别和理解图像和视频中的信息。通过模拟人类的视觉感知过程,深度学习技术使得机器能够识别物体、场景、人脸等,并理解它们之间的空间关系和动态变化。这种计算机视觉交互方式为自动驾驶汽车、智能安防等领域提供了强大的技术支持。

3. 情感计算与交互

深度学习技术还在情感计算领域取得了重要进展,使得机器能够识别和理解人类的情感状态,并作出相应的情感回应。例如,一些智能机器人能够通过分析人类的语音、面部表情和姿态等信息来判断其情感状态,并作出相应的安慰、鼓励等回应。这种情感交互方式增强了人类与机器之间的情感联系和信任感。

4. 未来展望

随着脑机接口等前沿技术的不断发展,未来人类与深度学习系统的融合将更加紧密和智能。脑机接口技术能够将人类的思维活动直接转换为机器可理解的指令,从而实现更加高效和自然的交互方式。这将为残疾人士提供更加便捷的生活辅助,同时也为健康人群提供更加智能的生活体验。

深度学习正在逐步改变人类与机器的交互方式,使得机器能够更加自然地理解和回应人类的语言、姿态和情感。未来,随着技术的不断发展和创新,我们有理由相信深度学习将为人类带来更加智能、便捷和美好的生活。
在这里插入图片描述

六、深度学习商业应用与社会影响

1. 商业应用

深度学习商业应用已经渗透到各个行业,为企业提供了创新的服务和解决方案,同时也推动了行业的数字化转型和升级。

  • 电子商务与推荐系统:在电子商务领域,深度学习通过分析用户的购物历史、浏览行为、搜索意图等数据,能够为用户推荐更加个性化和精准的商品。这种个性化推荐不仅提高了用户的购物体验,也增加了企业的销售额和用户忠诚度。
  • 金融科技与风险管理:在金融领域,深度学习被广泛应用于风险评估、欺诈检测、信贷审批、算法交易等方面。通过对大量金融数据的分析和挖掘,深度学习能够帮助金融机构更准确地评估风险、预测市场走势,从而提高金融服务的效率和安全性。
  • 医疗健康与图像分析:在医疗领域,深度学习图像分析技术已经成为病理诊断、病灶检测、医疗图像分析等任务的重要工具。通过训练深度神经网络模型,医生能够更快速、更准确地识别和分析医学影像,从而提高诊断的准确性和效率,为患者提供更好的医疗服务。

2. 社会影响

深度学习的广泛应用不仅推动了商业的发展,也对社会产生了深远的影响。

  • 自动化与智能化深度学习技术的不断发展推动了自动化和智能化的发展。许多传统行业正在逐步实现自动化和智能化升级,提高了生产效率和服务质量。这种趋势也催生了新的就业机会和产业结构。
  • 数据隐私与安全:然而,深度学习技术的广泛应用也引发了关于数据隐私和安全的担忧。在训练深度学习模型时,需要大量的个人数据进行训练和优化,这可能导致个人隐私的泄露和数据安全的问题。因此,如何保护个人隐私和数据安全成为深度学习技术发展面临的重要挑战。
  • 伦理道德与社会责任:此外,深度学习技术的应用也涉及到伦理道德和社会责任的问题。例如,在推荐系统中,如何避免算法偏见和歧视;在自动驾驶汽车中,如何确保行人和乘客的安全等。这些问题需要技术开发者、政策制定者和社会各界共同关注和解决。
  • 就业市场变革深度学习的广泛应用也对就业市场产生了深刻的影响。一方面,它催生了许多新的就业机会,如数据科学家、机器学习工程师等;另一方面,它也可能导致某些传统岗位的消失或转型。因此,如何适应这种就业市场的变革成为个人和社会需要思考的问题。

深度学习商业应用和社会影响方面都发挥着重要的作用。在享受深度学习带来的便利和效益的同时,我们也需要关注其可能带来的挑战和问题,并采取积极的措施来应对和解决这些问题。
在这里插入图片描述

七、深度学习的研究趋势与前沿探索

随着深度学习技术的不断发展和广泛应用,其研究趋势和前沿探索也在不断扩展和深化。以下是当前深度学习领域的主要研究趋势和前沿探索方向:

1. 模型的高效性和轻量化

随着深度学习模型的不断增大和复杂化,其计算复杂度和存储需求也在不断增加。这使得深度学习模型在资源受限的设备上运行变得困难。因此,研究如何降低深度学习模型的计算复杂度和存储需求,实现模型的高效性和轻量化成为当前的研究热点。例如,模型压缩、剪枝、量化等技术能够有效地减小模型的参数量和计算量,同时保持模型的性能。

2. 模型的可解释性和透明度

深度学习模型通常被视为“黑盒”模型,其内部工作原理和决策依据难以直观解释。这限制了深度学习模型在某些需要高度可解释性的领域(如医疗、金融等)的应用。因此,提高深度学习模型的可解释性和透明度成为当前的研究方向之一。例如,设计更具解释性的神经网络结构、开发模型解释性工具等技术能够帮助人们理解模型的工作原理和决策依据,增加对模型的信任。

3. 无监督学习和自监督学习

传统的深度学习模型通常需要大量的标注数据进行训练,但标注数据往往获取成本高昂且数量有限。因此,研究如何利用未标注数据进行无监督学习或自监督学习成为当前的研究热点。这些方法能够利用未标注数据进行预训练,提高模型的泛化能力,并减少对大量标注数据的依赖。例如,自编码器、生成对抗网络等无监督学习技术已经在图像生成、数据降维等领域取得了广泛应用。

4. 深度强化学习

深度强化学习结合了深度学习强化学习的优势,能够处理高维状态空间和动作空间的任务。在游戏AI、自动驾驶等领域,深度强化学习已经取得了显著进展。例如,AlphaGo通过深度强化学习技术成功击败了人类围棋冠军,展示了其在复杂决策任务中的强大能力。

5. 图神经网络

图神经网络结合了深度学习和图论的理论,为处理复杂的图结构数据提供了新的思路。图神经网络能够处理节点分类、链接预测、图级别分类等任务,在社交网络、推荐系统、知识图谱等领域具有广泛应用前景。

深度学习的研究趋势和前沿探索正朝着更高效、更可解释、更智能的方向发展。未来,随着技术的不断发展和创新,我们有理由相信深度学习将为人类带来更多的惊喜和突破。
在这里插入图片描述

八、 深度学习的具体领域应用、效果与前景

1. 自然语言处理(NLP)

  • 应用深度学习在自然语言处理中的应用涵盖了机器翻译、文本生成、情感分析、问答系统等。其中,基于Transformer架构的模型(如GPT系列、BERT等)已成为NLP任务的主流方法。
  • 效果:通过大规模预训练和微调技术,这些模型在各种NLP基准测试中取得了显著的成绩,甚至在某些任务上达到了人类水平的表现。例如,GPT-3等模型能够生成流畅、连贯的文本,BERT在问答、文本分类等任务上表现出色。
  • 前景:随着模型规模的增大和训练数据的增加,未来NLP模型有望在处理更复杂、更自然的语言任务上取得更大突破。同时,多模态预训练、跨语言迁移等方向也是NLP领域的研究热点。

2. 计算机视觉(CV)

  • 应用深度学习在计算机视觉领域的应用包括图像分类、目标检测、人脸识别、图像生成等。卷积神经网络(CNN)是该领域的核心模型
  • 效果深度学习驱动的CV技术在多个基准测试(如ImageNet挑战赛)中取得了优异成绩,已广泛应用于实际场景。例如,在自动驾驶中,目标检测技术能够准确识别行人、车辆等障碍物;在安防领域,人脸识别技术已成为身份验证的重要手段。
  • 前景:随着计算能力的提升和算法的优化,未来CV模型将更加高效、准确。同时,视频分析、3D视觉、多模态学习等方向也是CV领域的研究趋势。
    在这里插入图片描述

九、 深度学习模型泛化能力

深度学习模型的泛化能力是指模型在未见过的数据上表现良好的能力。提高模型的泛化能力是深度学习领域的一个重要挑战。以下是一些解决方案:

1. 网络结构设计

  • 深度与宽度:适当增加网络的深度和宽度可以增强模型的表达能力,但过深的网络可能导致梯度消失或爆炸,因此需要设计合理的网络结构。
  • 残差连接:在深度网络中引入残差连接(Residual Connections)可以帮助解决梯度消失问题,并提高模型的训练稳定性。
  • 批量归一化(Batch Normalization):通过对每一批数据进行归一化处理,可以减少模型对初始权重的敏感性,加速训练过程,并提高泛化能力。

2. 优化算法选择

  • 学习率调度:动态调整学习率可以帮助模型在训练初期快速收敛,同时在训练后期保持稳定,避免在最优解附近震荡。
  • 动量(Momentum)与自适应优化器:使用带有动量的梯度下降或自适应优化器(如Adam、RMSprop等)可以加速训练过程,并有可能提高泛化性能。

3. 知识蒸馏

  • 自蒸馏(Self-Distillation):除了传统的教师-学生蒸馏模式外,还可以考虑自蒸馏方法,即让模型在训练过程中学习自己的输出分布,从而提炼出更加鲁棒的特征表示。

4. 对抗性训练

  • 对抗样本生成:通过对输入数据添加微小的扰动来生成对抗样本,然后训练模型在这些样本上也能保持正确的输出。这样做可以增强模型对输入扰动的鲁棒性,从而提高泛化能力。
  • 虚拟对抗训练(Virtual Adversarial Training):在不生成实际对抗样本的情况下,模拟对抗训练的效果。通过计算输入数据在模型输出上的微小变化来估计对抗方向,并在此方向上进行正则化。

5. 模型集成与融合

  • 快照集成(Snapshot Ensembles):在训练过程中保存模型的不同状态(如每隔一定数量的迭代),然后将这些状态作为独立的模型进行集成。这样做可以利用模型在不同训练阶段的信息来提高泛化能力。
  • 模型融合:结合多个不同结构或训练方法的模型来提高整体性能。通过平均或加权投票等方式融合各个模型的输出,可以获得更加稳定和准确的预测结果。

提高深度学习模型泛化能力的方法多种多样,需要根据具体任务和数据特点进行选择和调整。在实际应用中,可以尝试不同的策略组合来找到最优的解决方案。

在这里插入图片描述

综上所述,深度学习作为人工智能领域的重要分支,在算法原理、应用领域和研究趋势等方面都取得了显著的进展。未来,随着技术的不断发展和创新,深度学习有望在更多领域发挥更大的作用,为人类社会的发展带来更加深远的影响。


http://www.niftyadmin.cn/n/5366705.html

相关文章

EasyExcel的导入导出使用

EasyExcel的导入导出使用 /*** ClassName: CellWidthStyleHandler* Description: 设置表头的调整宽策略* Author: * Date: */ public class CellWidthStyleHandler extends AbstractColumnWidthStyleStrategy {// 可以根据这里的最大宽度,按自己需要进行调整,搭配单…

细说开源软件的影响力分析

开源软件的影响力分析 一、开源软件如何推动技术创新 开源软件以其开放源代码的特性,极大地推动了全球软件技术的创新和发展。这种开放性不仅使得开发者能够自由地查看、修改和使用源代码,还促进了全球开发者之间的深度协作和交流。 1.1 促进全球协作&…

乐意购项目前端开发 #7

一、购物车 本地购物车 创建cartStore.js文件 创建cartStore.js文件, 将购物车列表数据存在pinia中 import { ref, computed } from "vue"; import { defineStore } from "pinia"; import { useUserStore } from "./user"; import {insertCart…

leetcode(双指针)283.移动零(C++)DAY3

文章目录 1.题目示例提示 2.解答思路3.实现代码结果 4.总结 1.题目 给定一个数组 nums,编写一个函数将所有 0 移动到数组的末尾,同时保持非零元素的相对顺序。 请注意 ,必须在不复制数组的情况下原地对数组进行操作。 示例 示例 1: 输入…

微信小程序(三十四)搜索框-带历史记录

注释很详细&#xff0c;直接上代码 上一篇 新增内容&#xff1a; 1.搜索框基本模板 2.历史记录基本模板 3.细节处理 源码&#xff1a; index.wxml <!-- 1.点击搜索按钮a.非空判断b.历史记录&#xff08;去重&#xff09;c.清空搜索框d.去除前后多余空格2.删除搜索 3.无搜索…

HTML5+CSS3+JS小实例:科技感满满的数字科技脸特效

实例:科技感满满的数字科技脸特效 技术栈:HTML+CSS+JS 效果: 源码: 【HTML】 <!DOCTYPE html> <html lang="zh-CN"> <head><meta charset="UTF-8"><meta http-equiv="X-UA-Compatible" content="IE=edg…

【计算机二级考试C语言】C排序算法

C 排序算法 冒泡排序 冒泡排序(英语:Bubble Sort)是一种简单的排序算法。它重复地走访过要排序的数列,一次比较两个元素,如果他们的顺序(如从大到小、首字母从A到Z)错误就把他们交换过来。 实例 #include <stdio.h> void bubble_sort(int arr[], int len) {in…

有趣的CSS - 按钮文字上下滑动

目录 整体效果核心代码html 代码css 部分代码 完整代码如下html 页面css 样式页面渲染效果 整体效果 这个按钮效果主要使用 :hover 伪选择器以及 transition 过渡属性来实现两个子元素上下过渡的效果。 此效果可以在主入口按钮、详情或者更多等按钮处使用&#xff0c;增加一些鼠…