算法第一张作业

news/2025/10/7 13:55:13/文章来源:https://www.cnblogs.com/chenjiao1234/p/19128444

一、代码规范
对于大学生来说,不需要一开始就追求大公司那样面面俱到的规范,但也要抓住以下几个核心要点:

  1. 命名规范,这是最重要、也是最容易见效的一条。
    (1)变量/函数名:使用有意义的英文单词,不要用拼音或a, b, c。
    坏: int a, b; String s1;
    好: int studentCount; String userName;
    (2)使用正确的命名风格:
    小驼峰:用于变量和函数名。如 getUserInfo(), studentGrade
    大驼峰:用于类名和接口名。如 StudentManager, HomeworkSolution
    常量:全大写,下划线分隔。如 MAX_CONNECTION, DEFAULT_TIMEOUT
    私有变量/方法:可以用下划线开头(尤其在Python/JS中),如 _private_variable
    (3)做到“见名知意”:
    坏: function process()
    好: function calculateAverageScore()
  2. 注释规范,告诉别人(和未来的自己)“为什么”这么做
    (1)文件头注释:在每个源文件开头,说明作者、创建日期、文件的主要功能。
    (2)函数/方法注释:说明函数的目的、参数、返回值和可能的异常。
    (3)行内注释:在复杂或关键的逻辑旁添加简要说明,解释“为什么”要这样写,而不是“是什么”。
    3.格式与排版,干净的排版能极大提升代码的可读性。
    (1)统一的缩进:强烈建议使用4个空格代替Tab键,并在编辑器中设置好。
    (2)适当的空行:用空行来分隔不同的逻辑块,比如在函数之间、变量定义和执行代码之间。
  3. 函数/方法设计,单一职责原则
    (1)短小且专注:一个函数只做一件事,并且把它做好。
    坏: 一个processData()函数里又读文件、又计算、又打印结果。
    好: 拆分成 readDataFromFile(), calculateAverage(), printReport() 三个函数。
    (2)参数不宜过多:如果参数太多(比如超过4个),考虑是否可以将它们封装成一个对象(如Config对象)。
  4. 错误处理 - 让程序更健壮
    (1)不要忽略异常:即使只是简单打印一下,也比直接“吞掉”好。
    坏: try { ... } catch (Exception e) { } // 空的catch块是万恶之源
    好: try { ... } catch (FileNotFoundException e) { log.error("文件未找到", e); }
    (2)返回有意义的值:对于C/Python等语言,函数执行失败时不要返回一个模糊的值,可以返回None、-1,或者直接抛出异常。

二、数学之美读后感
读完《数学之美》第17章,我对“简单”二字有了新的认识。这一章通过实例展现了简单数学模型解决复杂问题的力量,让我联想到大一学过的《数据结构》。书中提到,看似朴素的算法往往最有效——这不正是KMP匹配或哈希查找背后的哲学吗?
作为计算机专业学生,我常陷入追求复杂技术的误区。这一章却点醒我:真正优雅的程序设计,应当是用最简单的数学工具直击问题本质。就像用余弦定理做新闻分类,用布尔代数处理搜索——数学的简洁之美,恰恰是构建复杂系统的基石。这让我决心在后续课程中,更注重理解基础理论的内在美感,而不仅是实现功能。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/930476.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

怎么使自己的网站秦淮做网站价格

六西格玛,这个在业界久负盛名的管理理念,它的魅力太强大了。曾听闻它能帮助企业和个人提升竞争力,但当真正走进这个培训体系时,会发现它的影响力远超你的想象。 在六西格玛的指导下,企业实现了显著的转变。之前那些看…

MySQL CentOS7 本地安装

假设已经删除了MySQL,如果你没有删除可以搜索一下 mysql-libs.zip 百度网盘 我这里是使用了unzip来解压 sudo yum install -y unzip zip unzip mysql-libs.zip cd mysql-libs 本来是使用rpm,但是这里缺少perl error:…

TypeScript装饰器 - Ref

TypeScript装饰器 01-简介02-类装饰器03-装饰器工厂04-装饰器组合05-属性装饰器06-方法装饰器07-访问器装饰器08-参数装饰器

网站服务器租用多少钱才合理呢什么是关键词

经过3个多小时的努力,配置JNDI数据源(主要是通过DBCP连接池)终于搞定~还是Tomcat官方的说明好,不过全是英文的,大概还看得懂.百度上那么花花绿绿的太多了,一个也没成功!.&#xff0e…

【笔记】排列与组合学习笔记

前言 总概 本文章将会向你讲解排列与组合的基本知识和综合运用。 会从定义、问题导入、解决方法、经典例题、总结等方面讲解。 前置知识有一定的数学思维能力和理解能力 加法计数原理 乘法计数原理 阶乘加法计数原理和…

【高级数据结构】ST 表

前言 大部分 ST 表能解决的问题树状数组和线段树都能解决,只不过 ST 表的代码实现更加简单。 ST 表可以求解区间 $[l,r]$ 的最值问题等区间查询。 ST表 ST 表的定义 ST 表是利用倍增思想来解决区间问题的,这样可以缩…

【高级算法】树形DP

前言 本篇文章针对对于树形DP有一定基础的人,没学过的话请出门左转~ 树上背包 P1273 有线电视网 题目简述 有一棵有根树,每个叶子节点都有一个可赚的钱数,每走一条路都有相应的花费。 则在不亏本的情况下从根节点能…

如何提升网站seo排名h5都用什么网站

在日常的数据存储与管理中,移动硬盘作为便携且容量可观的存储设备,深受用户青睐。然而,当您发现联想闪电鲨移动硬盘中的文件突然消失,而您确信并未进行删除操作时,这无疑会令人感到困惑与焦虑。本文旨在为您揭开这一谜…

【高级数据结构】浅谈最短路

前言 最短路是图论中非常典型的模板之一,在生活中也可以到处见到许多。 例如在中国有许多个城市,我现在正在成都,现在我想开车去重庆,而在成都去往重庆的道路上,有许多的道路可以到达,而我想要以最快的速度到达,…

代码随想录打卡|Day53 图论(Floyd 算法精讲 、A * 算法精讲 (A star算法)、最短路算法总结篇、图论总结 ) - 实践

pre { white-space: pre !important; word-wrap: normal !important; overflow-x: auto !important; display: block !important; font-family: "Consolas", "Monaco", "Courier New", …

织梦网站新闻列表调用重庆旅游攻略

复原IP 地址 力扣原题链接 问题描述 有效 IP 地址正好由四个整数(每个整数位于 0 到 255 之间组成,且不能含有前导 0),整数之间用 ‘.’ 分隔。 例如:“0.1.2.201” 和 “192.168.1.1” 是有效 IP 地址&#xff0c…

自己做网站如何销售大学网站开发策划

1、官网下载IDE JetBrains下载 2、IDE下载、安装步骤 这里展示的是如何在Windows上下载、安装Pycharm工具,Linux的步骤类似。 2.1、选择开发者工具 选择开发者工具 2.2、选择Pycharm 选择Pycharm 2.3、选择下载 选择下载 2.4、选择社区版 一般而言&#xff…

2025电位仪厂家最新企业品牌推荐排行榜,纳米粒度及 Zeta 电位仪,Zeta 电位仪公司推荐

在胶体化学、材料科学、生物医药等关键领域,电位仪(尤其是纳米粒度及 Zeta 电位仪)作为精准表征颗粒表面电荷特性与分散稳定性的核心设备,直接决定了科研实验的数据可信度与工业生产的产品质量可控性。无论是锂电池…

PCIe扫盲——物理层逻辑部分基础(二)

上一篇文章中提到了Mux会对来自数据链路层的数据(TLP&DLLP)插入一些控制字符,如下图所示。当然,这些控制字符只用于物理层之间的传输,接收端的设备的物理层接收到这些数据后,会将这些控制字符去除,在往上传…

前沿仿真未来趋势

随着 SoC 设计复杂度不断飙升,仿真(Emulation) 已成为验证流程中不可或缺的一环。本篇博客聚焦混合仿真、云端仿真、ML 驱动及 ICE 等前沿趋势,为你带来技术洞察与实操启发。 1、混合仿真(Hybrid Emulation):软…

公司网站建设多少费用济南兴田德润团队怎么样网络设计收入

基础语法 AppleScript 入门 一、这部分介绍注释,发出声音,弹窗 (1)简单入门 <1>多行注释 (* this is multi comment *) <2>发出响声beep 3(2)#表示使用"Daniel"(英国发音)发出声音,人员选择如下图1所示say "Hello,world" using "Daniel&…

怎么免费申请个人网站郑州个人网站制作公司

实验七 JSP内置对象II 目的&#xff1a; 掌握JSP内置对象的使用。理解JSP的作用域掌握session&#xff0c;application对象的使用 实验要求&#xff1a; 完成实验题目要求提交实验报告&#xff0c;将代码和实验结果页面截图放入报告中 实验过程&#xff1a; 一、结合之前…

网站建设用免费素材开发公司对设计单位奖惩

在Vue中&#xff0c;有多种方法可以动态添加样式。下面介绍几种常用的方法&#xff1a; 1. 使用动态绑定的方式&#xff1a; 可以使用:style指令将一个对象作为值传递给它&#xff0c;对象的属性名表示要设置的样式属性&#xff0c;属性值表示要设置的样式值。例如&#xff1…

StarRocks与Apache Iceberg:构建高效湖仓一体的实时分析平台 - 详解

StarRocks与Apache Iceberg:构建高效湖仓一体的实时分析平台 - 详解pre { white-space: pre !important; word-wrap: normal !important; overflow-x: auto !important; display: block !important; font-family: &qu…