
程序设计与开发
文章平均质量分 67
记录算法学习与编程开发实践
CS_木成河
因为热爱,所以坚持~
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
【趣学算法】动态规划
动态规划把原问题分解为若干子问题,然后自底向上,先求解最小的子问题,把结果存储在表格中,再求解大的子问题时,直接从表格中查询小的子问题的解,避免重复计算,从而提高算法效率。原创 2022-10-29 15:48:50 · 916 阅读 · 0 评论 -
【数据结构与算法笔试】途家1105秋招笔试
你作为一个数据工程师,正在为数据仓库设计一个工具,该工具的主要功能是从给定的 SQL 查询语句中解析出所涉及的所有表名。你的任务是编写一个程序,从给定的 SQL 查询语句中提取所有不同的表名,并按字母顺序返回。在真实世界的应用中,SQL解析会更复杂,涉及到子查询、内嵌的SELECT语句等,这种情况下可能需要更复杂的解析器,如ANTLR等来处理。例如,对于坐标(2,5), x 的二进制表示为010,而 y 的二进制表示为101,交替编码的结果为011001。:这是对可能存在的别名的匹配,这一部分是可选的。原创 2023-11-05 17:11:11 · 399 阅读 · 0 评论 -
【数据结构】链表
这是最基本的方法,逐个创建链表节点,并通过指针连接它们。这种方法可以灵活地控制每个节点的值和连接关系。:可以使用循环来简化逐个节点创建的过程,特别是在已知节点值的情况下,循环遍历值数组来创建链表节点。:头插法是一种创建链表的方法,在遍历元素的同时,将新节点插入到链表头部。:尾插法是一种创建链表的方法,在遍历元素的同时,将新节点插入到链表尾部。原创 2024-04-18 16:17:36 · 307 阅读 · 0 评论 -
【趣学算法】分治算法
分治算法采用分而治之的策略,将一个大规模的问题分解为若干个规模较小的相同子问题。原创 2022-10-28 16:11:43 · 596 阅读 · 0 评论 -
【趣学算法】贪心算法
贪心算法总是做出当前最好的选择,期望通过局部最优选择从而得到全局最优的解决方案。在贪心算法中,注意以下几个问题:(1)没有后悔药。一旦做出选择,不可以反悔。(2)有可能得到的不是最优解,而是最优解的近似解。(3)选择什么样的贪心策略,直接决定算法的好坏。那么,贪心算法需要遵循什么原则呢?原创 2022-10-24 11:21:03 · 1268 阅读 · 0 评论 -
【趣学算法】神奇的兔子序列(斐波那契数列)
努力是为了不平庸~算法学习有些时候是枯燥的,这一次,让我们先人一步,趣学算法!欢迎记录下你的那些努力时刻(算法学习知识点/算法题解/遇到的算法bug/等等),在分享的同时加深对于算法的理解,同时吸收他人的奇思妙想,一起见证技术er的成长~原创 2022-10-21 20:01:59 · 1677 阅读 · 0 评论 -
【数据结构与程序设计】实现顺序表的各种基本运算
编写一个程序sqlist.cpp,实现顺序表的各种基本运算和整体建表算法(假设顺序表的元素类型ElemType为char),并在此基础上设计一个主程序exp2-1.cpp完成如下功能:原创 2022-05-21 18:49:27 · 4440 阅读 · 0 评论 -
【数据结构与算法笔试】京东0928秋招笔试
问题描述:小红拿到了一个矩阵,初始有一些格子被染成了黑色。现在小红希望把最多k个未被染成黑色的格子染成红色,具体的计分方式为是:如果一个红色格子下方相邻的格子也是红色,那么这个红色格子可以得1分。提示:单个轴对称的字母有"ilmnouvwx";一对相互轴对称的字母有"pq"、“bd”例如,bod、pwq、ovo等字符串是轴对称的,而ntn不是轴对称的字符串。问题描述:小红定义一个字符串是轴对称的,当且仅当该字符串反转后和原串相同。显然,一共有两个合法的解,你需要从小到大输出这两个解的圆的半径。原创 2023-10-24 23:50:59 · 476 阅读 · 0 评论 -
【趣学算法】算法的时空复杂性
算法是对特定问题求解步骤的一种描述,它不依赖于任何一种语言,既可以用自然语言、程序设计语言描述,也可以用流程图、框图来表示。通常情况下,为了更清楚地说明算法的本质,我们会去除计算机语言的语法规则和细节,采用“伪代码”来描述算法。原创 2022-10-21 16:17:13 · 518 阅读 · 0 评论 -
【数据结构与算法笔试】携程1024秋招笔试
游游拿到了一个整数。她希望截取其中的一段,使得这一段代表的整数是72的倍数。游游想知道,共有多少种不同的截取方案?已知游游准备选择其中的个方案,使得总期待值尽可能高。你能帮游游求出最大的期待值之和吗?她每年会选出 n 个备选的旅游方案,每个方案的目的地为一个城市。如果在这一年中第一次选择某城市,那么该方案的期待值会翻倍。现在给出每个方案的目的城市以及游游对该方案的期待值。截取的方案必须是一个合法的整数,即不允许出现前导零。请你输出最终生成的字符串。原创 2023-10-24 23:38:04 · 228 阅读 · 0 评论 -
【软件应用开发】基于SSM框架的共享云盘系统设计与实现
整个软件以文件上传、存储、下载、分享为中心,实现用户进行云盘操作文件为目的,并扩展了在线预览图片/txt、在线预览Office文档、在线播放音/视频、验证码验证一系列等功能。原创 2022-09-21 16:28:16 · 3493 阅读 · 6 评论 -
【软件开发架构】Spring、MyBatis与Spring MVC框架的整合
1)在src目录下,创建com.itheima.po包,并在包中创建持久化类Customer:2)在src目录下,创建一个com.itheima.dao包,并在包中创建接口文件CustomerDao以及对应的映射文件CustomerDao.xml3)在src目录下,创建com.itheima.service包,然后在包中创建接口文件CustomerService,并在CustomerService中定义通过id查询客户的方法4)在src目录下,创建一个com.itheima.service.impl包原创 2022-06-15 10:45:09 · 546 阅读 · 0 评论 -
【软件开发架构】基于SpringMVC注解的学生信息的查询
(1)创建Student类,添加stuName和password属性及其getter/setter方法(2)在Student类上添加@Component(“student”)注解(3)在Student类中添加toString()方法(4)创建StudentController,并利用@Resource(name=“student”)获取Student实例,并存储到Student对象student(5)利用Setter方法为student对象设置stuName=”小雪”,password=”1原创 2022-06-15 10:24:58 · 475 阅读 · 0 评论 -
【软件开发架构】初识Spring框架—以学生信息管理系统为例
Student接口CollegeStudent类LogAspect切面类applicationContext.xmlStuTest类运行结果:原创 2022-06-15 10:11:17 · 644 阅读 · 0 评论 -
【软件设计模式】责任链模式应用
企业采购分级审批:采购量的不同需要不同层次的主管人员审批。如主任可以审批10万元以下的采购单,副董事长可以审批25万元以下的采购单,董事长可以审批100万元以下的采购单,100万元以上的开会决定。使用责任链模式设计,在客户端随机生成一张采购单,并完成审批。主管人员类主任类副董事长类董事长类客户端运行结果:...原创 2022-06-15 09:49:59 · 288 阅读 · 0 评论 -
【软件设计模式】观察者模式应用
请用Java类库中的Observerable和Observer实现报纸订阅功能,具体要求如下:• 报纸类,具有报纸名称和报纸内容,让报纸内容发生变化时,能够通知订阅者• 订阅者类,具有人名和阅读报纸的功能,能够在控制台输出阅读信息,形如“张三阅读了威海日报,内容是。。。”• 在控制台中,任意生成一份报纸和若干订阅者,通过设置报纸内容,检验观察者模式的执行情况。报纸类读者类客户端运行结果:...原创 2022-06-15 09:45:20 · 153 阅读 · 0 评论 -
【软件设计模式】状态模式应用
设计一个台灯控制软件,台灯上有一个按键和一个旋钮,按键控制电源开关,旋钮控制台灯亮度。请用状态模式实现该控制软件的编写。1.绘制台灯状态图2.编写状态类与台灯类3.编写测试代码,测试台灯的开关以及亮度的调节。状态接口台灯类打开状态类关闭状态类客户端运行结果:...原创 2022-06-15 09:37:40 · 302 阅读 · 0 评论 -
【软件设计模式】装饰者模式应用
请为星巴克公司的饮料销售系统编写一款收费软件。星巴克中可以提供的基础饮料有咖啡、奶茶和可乐,可以选择的配料(Condiment)有布丁(Pudding)、冰激凌(IceCream)、蓝莓(BlueBerry), 客户在订购饮料时,可以在基础饮料的基础上添加任意的配料,请使用装饰者模式设计系统,要求绘制系统类图并编写代码,在测试程序中输出一杯添加了布丁和蓝莓的奶茶的价格。抽象饮料Drinks接口具体饮料咖啡类具体饮料奶茶类具体饮料可乐类抽象装饰配料类具体装饰布丁类具体装饰冰激凌类具体装饰蓝莓类原创 2022-06-15 09:24:53 · 282 阅读 · 0 评论 -
【软件设计模式】适配器模式应用
现有一个接口DataOperation定义了排序方法sort(int[]) 和查找方法search(int[], int),已知类QuickSort的quickSort(int[])方法实现了快速排序算法,类BinarySearch 的binarySearch(int[], int)方法实现了二分查找算法。试使用适配器模式设计一个系统,在不修改源代码的情况下将类QuickSort和类BinarySearch的方法适配到DataOperation接口中。绘制类图并编程实现。(要求实现快速排序和二分查找,使用对原创 2022-06-15 09:15:33 · 253 阅读 · 0 评论 -
【软件设计模式】组合模式应用
使用组合模式设计一个杀毒软件(AntiVirus)的框架,该软件既可以对某个文件夹(Folder)杀毒,也可以对某个指定的文件(File)进行杀毒,文件种类包括文本文件TextFile、图片文件ImageFile、视频文件VideoFile。绘制类图并编程模拟实现。AbstractFile接口TextFile类ImageFile类VideoFile类Folder类Client客户端运行结果:......原创 2022-06-15 09:04:58 · 2144 阅读 · 0 评论 -
【软件设计模式】单例模式应用
很多应用项目都有配置文件,这些配置文件里面定义一些应用需要的参数数据。如果客户端使用这个类是通过new一个AppConfig的实例来得到一个操作配置文件内容的对象,则在系统运行中,有很多地方都需要使用配置文件的内容,系统中会同时存在多份配置文件的内容,这会严重浪费内存资源。事实上,对于AppConfig类,在运行期间,只需要一个对象实例就够了。那么应该怎么实现呢?用Java控制台应用程序实现该单例模式。绘制该模式的UML图。AppConfig.javaClient.java运行结果:.........原创 2022-06-15 08:53:33 · 393 阅读 · 0 评论 -
【软件设计模式】工厂模式应用
有一个电脑制造商代理做HP笔记本电脑,后来该制造商得到了更多的品牌笔记本电脑的订单Acer,Lenovo,Dell,该制造商发现,如果一次同时做很多个牌子的本本,有些不利于管理。利用工厂模式改善设计,绘制该模式的UML图,用Java控制台应用程序实现。Computer.javaComputerFactory.javaAcerComputer.javaDellComputer.javaHpComputer.javaLenovoComputer.javaAcerFactory.javaDellF原创 2022-06-14 22:07:31 · 185 阅读 · 0 评论 -
【Linux系统服务】安装实现Nginx
1.安装Nginx(1)安装编译工具及库文件:pcre-devel zlib-devel openssl openssl-devel(2)下载并解压Nginx(3)编译(4)安装Nginx2.设置Nginx启动Nginx3.测试Nginx原创 2022-06-14 21:49:26 · 271 阅读 · 0 评论 -
【Linux系统服务】安装实现FTP服务
1.下载安装FTP服务2.设置FTP服务(1)添加一个访问FTP的用户admin(2)给 /home/admin/ 文件下设置777权限(3)关闭防火墙(4)启动FTP服务3.测试FTP服务。(1)Windows系统下的本地访问 ftp://192.168.1.107原创 2022-06-14 19:40:18 · 402 阅读 · 0 评论 -
【Linux系统服务】实现虚拟机和工作主机的双向通信
Linux实现虚拟机和工作主机的双向通信1.更改虚拟机网络设置为桥接模式,并启动虚拟机。2.在虚拟机系统内,使用命令 $>ip a 查看Linux系统网络设置。3.使用ping命令进行网络互通测试工作主机ip:192.168.1.101虚拟机ip:192.168.1.107.........原创 2022-06-14 19:25:02 · 563 阅读 · 0 评论 -
【软件应用开发】jsp+servlet实现网上书城(简易版)
jsp+servlet实现网上书城(简易版)编程语言:Java(jdk 1.8)开发IDE:eclipse数据库:MySQL使用Tomcat部署工程后访问:http://localhost:8080/BooksCart工程结构:booklist.jsp<%@ page contentType="text/html;charset=UTF-8" language="java" pageEncoding="UTF-8" %><%@ taglib prefix="c" uri=原创 2022-05-27 16:00:17 · 3267 阅读 · 2 评论 -
【软件应用开发】小米便签APP维护开发
本文主要介绍在小米便签APP原有功能的基础上,设计并实现了便签添加图片的功能,从开发过程、运行界面、源代码三个方面进行详细介绍。一、开发过程首先在note_edit.xml文件中添加add_img_btn按钮;在NoteEditActivity.java文件的onCreate()方法中,为这个“添加图片”按钮设置监听器,点击添加图片按钮时,会触发点击事件;重写onActivityResult()来处理返回的数据,并将图片的路径也写入到数据库;点击一个note后,会初始化note的内容,并通过co原创 2022-05-22 11:17:44 · 12204 阅读 · 51 评论 -
【软件应用开发】购物车前端样式页面设计
仿照淘宝购物车,设计购物车样式页面功能:使用JavaScript实现商品数量和单价的计算cart.html<!DOCTYPE html><html> <head> <meta charset="utf-8"> <title>淘宝购物车</title> <link rel="stylesheet" type="text/css" href="css/cart.css"/> <script src原创 2022-05-21 20:20:39 · 2440 阅读 · 0 评论