周洪锋的博客
  • 首页
  • 归档
  • 分类
  • 标签
  • 关于
  • 友链
  •   
  •   

《算法设计与分析》复习笔记

计算复杂度 T(n)∈O(f(n))  ⟺  lim⁡n→∞T(n)f(n)≤c  ⟺  ∀n≥n0 T(n)≤f(n)O(f(n))+O(g(n))=O(max⁡{f(n),g(n)})O(f(n))+O(g(n))=O(f(n)+g(n))O(f(n)∗g(n))=O(f(n)∗g(n))O(cf(n))=O(f(n))T(n)\in O(f(n)) \iff \lim_{n\rarr \i
2024-12-25
算法
#笔记 #算法

《数值分析》复习笔记

一、绪论 数值计算算法设计的基本原则 要有数值稳定性,能够控制舍入误差的传播; 防止较小的数加到较大的数; 避免两个相近的近似值相减; 除法运算时,要避免除数的绝对值远远小于被除数的绝对值。 误差、有效数字 绝对误差:e=x∗−xe=x^*-xe=x∗−x,精确值减去近似值; 相对误差:er=ex=x∗−xx∗e_r = \frac{e}{x}=\frac{x^*-x}{x^*}er​
2024-12-15
数学
#数学 #笔记

SpringBoot依赖注入以及相关注解

近期的一个项目中需要搭建一个后端,根据ChatGPT之神的指引,决定使用开源、简洁的后端框架Spring Boot。选这个框架的另一个原因是《服务计算基础》这门课中接触了一下Apache Dubbo、Spring Boot和Apache Axis这几个后端的开发方式,发现还是使用Spring Boot开发一个REST接口最简单轻量,毕竟不是专门要走后端方向,最简单的学习成本才是最重要的。 依赖
2024-12-01
后端
#后端 #开发

thinking_of_encrypt_design_model

前段时间接到一个实现可搜索加密的任务,用着顺其自然的设计模式完成了代码的编写。但是今天回头看,感觉还是有诸多问题,写一篇博客记录加密算法开发的心路历程。 功能实现 该算法是一种代理重加密的公钥加密算法,主要用于用户之间的数据共享。首先用户可以将文件用私钥加密后上传到云端,并且该文件会附带关键词,其他用户可以使用该关键词检索到该文件,并向文件拥有者申请授权。该算法需要实现的关键接口函数如下: S
2024-11-27
经验心得
#开发 #设计模式

抽象代数基础之环、域

顺着上篇博客的内容,本篇博客继续学习抽象代数。内容主要涉及一些比较基础的关于交换环、域的定理。 基本性质 定义:交换环是指有加法和乘法两种二元运算的集合R,满足: R在加法下是阿贝尔群; 乘法运算具有交换性; 乘法运算具有结合性; 乘法运算存在幺元1; 分配性:对每个a,b,c∈R,a(b+c)=ab+aca,b,c\in R, a(b+c)=ab+aca,b,c∈R,a(b+c)=ab+ac
2024-11-26
数学
#密码学 #抽象代数

抽象代数之群论基础

为了更好地研究密码学,本着“磨刀不误砍柴工”的想法,对本科时学习的《离散数学》进行一个复习。不一样的是,这次直接对抽象代数(特别是其中的群论、环论、域论)进行再次探索。参考书目为Joseph J. Rotman的《Advanced Modern Algebra》以及丘维声的《抽象代数基础》。对于我认为重要的定理,我会记录下来并附加上主观感受,并不会给上详细证明。 这篇博客先主要复习群论,其余之后再
2024-11-19
数学
#数学 #抽象代数

约瑟夫问题递推解以及非递推解推导

约瑟夫问题 约瑟夫斯置换是一个出现在计算机科学和数学中的问题。在计算机编程的算法中,类似问题又被称为约瑟夫环。 人们站在一个等待被处决的圈子里。 计数从圆圈中的指定点开始,并沿指定方向围绕圆圈进行。 在跳过指定数量的人之后,处刑下一个人。 对剩下的人重复该过程,从下一个人开始,朝同一方向跳过相同数量的人,直到只剩下一个人,并被释放。 问题即,给定人数、起点、方向和要跳过的数字,选择初始圆圈中的
2024-11-02
算法
#算法

《服务计算基础》作业1

《服务计算基础》这门课质量是很高,但是课程作业也可以说是非常折磨人。作业里要求编程的内容并不多,但是每个实验都需要配置环境,非常的麻烦。所以把这个作业的实验报告稍加修改,作为一篇博客发表,希望可以帮助到后来的人。 服务计算基础 Homework1 作业1: 服务开发和调用 12345678910111213>Class person>{String name;int ag
2024-10-29
后端
#后端

单元测试与测试驱动开发

在学着做lept_json这个项目时,作者在教程中介绍了单元测试的概念,并使用测试驱动开发(Test Driven Development)的方法来循序渐进地完善程序的功能。这篇博客就简单地展开讲一下单元测试和测试驱动开发,并介绍一下在Java中如何使用JUnit库来对代码进行单元测试。 单元测试 单元测试其实挺好理解的,平时在写代码时,有经验的程序员经常会将不同的功能拆分成函数,这样便于对每个
2024-10-19
经验心得
#开发 #LeptJson #测试

【长期更新】LeetCode刷题笔记

自从上了大学,高中的算法竞赛的内容就逐渐地忘记了,到现在已经快退化到平均水平了。上了研也应该重新收拾一下,开始准备实习、找工作了。本篇博客长期更新,记录算法题的做题思路,只记录思路,不是特殊情况不记录代码。 LeetCode 25. K个一组翻转链表 题目链接 题面 给你一个链表,要求每k个链表为一组,将它们翻转。当剩余的链表不足k个时,不做任何操作。 12输入:head = [1,2,3,
2024-10-15
算法
#算法 #LeetCode
1234…8

搜索

Hexo Fluid
总访问量 次 总访客数 人