自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

xindoo

面向情怀编程

  • 博客(380)
  • 资源 (19)
  • 收藏
  • 关注

原创 Spring Cache简明教程

Spring Cache是Spring框架提供的一个抽象层,专注于提供一种透明的方式来添加缓存功能到Spring应用程序中。它不是一个具体的缓存实现,而是提供了一套创建和管理缓存的标准,并能够与多种缓存实现无缝集成,例如Ehcache、Caffeine、Redisson等。本文详细介绍了Spring Cache的使用和注意事项。Spring Cache作为Spring框架提供的缓存抽象,允许通过声明式注解轻松地在应用中集成缓存,以此提升性能和减少开发时间。Spring Cache不是缓存实现。

2024-01-29 22:34:51 985

原创 如何正确使用缓存来提升系统性能

本文讨论了使用缓存提升系统性能的实践,包括确定数据是否适合缓存、优化缓存配置以及缓存命中率的重要性。同时,文章还探讨了处理缓存引起的数据一致性问题的策略,旨在帮助读者有效地管理缓存,以提升系统效率并降低相关风险。

2023-12-14 08:22:28 1102 1

原创 Java CompletableFuture使用示例

总结下本文,Future尽管有用,但在功能上还是相对简单。不仅提供了获取执行结果的能力,它还增添了异常处理、手动完成、链式操作、结果组合和回调等强大功能。异常处理: 利用和handle方法,可以简化异常处理流程,使其更加直观和易于管理。手动设置结果允许我们在任意时间点手动设置结果,增加了灵活性。链式操作: 通过链式操作,我们可以将不同的异步操作以流水线的方式串联起来,编写复杂的并发逻辑变得更加简单。结果组合和allOf方法能够将多个的结果合并,为我们提供了更多处理异步操作结果的方式。

2023-12-03 20:50:45 1031

原创 软件开发中的抓大放小vs极致细节思维

而反观支付宝替换Oracle数据库的事,他们处理的是金融相关的数据,也就是和钱相关的数据,比如给你少算一分钱,这不是一分钱的问题,而是信任的问题,一旦出问题公司可能就黄了,所以他们出问题的成本是非常高的。首先,我作为研发,大部分情况下的决策都是“不做”,因为做了会显著增加我的工作量,软件开发过程中也存在二八定律,80%的功能只占开发时间的20%,而剩余20%的功能需要额外投入80%工作量。这仿佛是个无解的哲学问题,下面我给出我对这个问题的答案,仅仅是一份我自己的观点,大家也可以在评论区探讨下。

2023-11-25 22:21:18 7496 4

原创 OpenAI Assistants-API简明教程

以上就是Assistants-API整体的开发流程,了解了这些流程后,大家可以很容易构建出像ChatGPT-Plus的私人助理。当然Assistants-API目前还是在beta阶段,有很多功能不完善,比如不支持流式返回、不支持图片生成、不支持插件调用……,甚至run的状态还需要轮询来获取……。另外我在写本文demo的时候,发现Retrivel的文本内容召回成功率非常低,导致账单计算成功率很低(也可能是我给的文本格式的问题)。

2023-11-19 22:36:49 1980 2

原创 OpenAI的多函数调用(Multiple Function Calling)简介

就在上周,OpenAI在开发者大会上,升级了函数调用的功能,在新的gpt-3.5和gpt-4模型中,可以在单轮对话中调用多个函数了,而且在python SDK中也提供了并发函数调用相关的接口,无疑这将大幅减少大语言模型和现实世界之间交互的开发复杂度,接下来就让我用一个具体的示例,带你了解下OpenAI的新特性。这里额外说下,上面的三个函数调用是串行调用,如果每个函数都比较耗时的话,会增加整体的调用时长,而在最新的assistant api中增加了并行执行函数的api,这个我们放到下篇文章中讲解。

2023-11-18 22:22:27 1423 1

原创 ffmpeg视频截取时DTS乱序导致无法截取的问题

因为原始视频不是连续录制,所以就有一定的概率出现A视频的末尾和B视频的开始拼接在同一个m3u8中的可能。在这种情况下,A视频末尾一帧的DTS和B视频首帧的DTS肯定是不连续的,截取时就会报"DTS 0 < 1986554 out of order",最终截取失败。开始以为是hls中的视频片段有问题,后来和同事一起排查发现,所有失败的情况下,执行ffmpeg命令截取时都会报。,顺着这个信息我们发现但凡失败的,都是我们在m3u8里拼接了另外一个视频的部分片段导致的。

2023-11-04 18:02:19 658

原创 如何使用ffmpeg制作透明背景的视频

数字人的视频我是使用的腾讯智影生成带绿幕的视频,要实现透明背景,有个很关键的信息需要知道,不是所有的视频格式(视频编码)都支持透明背景,首先我们最常用的mp4就是不支持(不管是h264还是h265)都不支持,目前支持透明背景的只有少部分视频编码,比如google的vp9(webm)格式,上图中我用就是webm+vp9编码的视频。另外一个问题是webm的格式也并不普及,比如腾讯智影导出只支持mp4,像剪映甚至final cut pro这样专业的剪辑软件都无法编辑导出透明背景的webm格式。

2023-10-28 22:08:12 1919 11

原创 Java21虚拟线程实践

虚拟线程是一种轻量化的线程封装,由jvm直接调度和管理。反之普通的线程其实是调用的操作系统的能力,对应的是操作系统级的线程。相对虚拟线程来说操作系统级的线程持有成本很高,而且受操作系统调度和管理的。实际在普通多线程情况下,如果出现IO阻塞,这个线程就必须得跟着阻塞,这个线程对应的操作系统就被阻塞,而他却持有大量的内存。另外,要处理大量的IO就得新建更多线程,而大量的线程会在操作系统切换时因上下文切换导致大量的CPU被浪费。

2023-09-24 20:14:15 6802 7

原创 spring-kafka中ContainerProperties.AckMode详解

本文是一个深入讨论如何通过优化 Kafka 的消费者确认模式来提升 I/O 密集型系统性能的案例研究。首先分享了一个实际的性能问题,通过改变一行代码中的 Kafka 消费者确认模式配置,系统性能提升了几十倍。这引出了文章的主题:Spring-Kafka 中的七种确认模式(包括两种手动确认模式和五种自动确认模式)的详细介绍和比较。作者不仅解释了每种确认模式的工作原理,还提供了关于何时以及如何选择适合的确认模式的实用建议。这篇文章是那些需要处理大量 I/O 操作,特别是使用 Kafka 的开发人员、架构师的

2023-09-15 23:17:22 935 3

原创 如何在地图上寻找最密集点的位置?

举个简单例子,给定一个点,如果其他某个点距这个点距离近,密度值就高,反之就远,这个点到其他所有点的密度和求平均就是这个点最终的密度值,这里我们可以直接选用距离的倒数来当成核函数,不过这个核函数是线性的,最终结果和我求平均值差异不大。但我们实际在线上使用的时候,遇到了两个特殊的case。前人也是这么想的,于是就有了很多非线性核函数,而我最终使用了高斯核,调整好核函数的带宽后,其他点带来的密度值也会随着距离,以正态分布的方式衰减如下图,举例越远纵轴的坐标值越低,图中的sigma就是我们核函数的里的带宽。

2023-08-26 21:36:44 432

原创 IO密集型服务提升性能的三种方法

在面对IO密集型系统性能优化时,我们可以通过三种主要的方式来进行:批处理、缓存和多线程。这三种方式各有其优点和适用场景。批处理可以通过减少网络IO次数,显著减少网络传输的延迟时间,从而提升系统性能。但是,它需要我们仔细分析和设计我们的数据处理流程,才能找到合适的批处理策略。缓存则是通过存储频繁访问的数据,减少了对慢速存储(如磁盘或网络)的访问,从而提升性能。但是,使用缓存时需要考虑数据的一致性问题,以及如何选择合适的缓存淘汰策略。

2023-08-12 20:26:17 421

原创 职场中的基本归因错误和自利归因

在评价他人时,避免陷入基本归因错误有个简单的方法,就是换位思考,把自己带入ta的位置,看是否依旧取得同样的结果,如果结果相同那大概可以确定其实是外部环境导致的,而不是其能力和动机的问题。不过换位思考也是一件很难的事,有些事你曾经没有做过或者经历过情况下,会低估事情的复杂度和难度,这也是很多时候一件事自上而下说很简单,自下而上说很难的原因。避免自利归因对个人来说其实更难,因为这是一种思维误区,光靠自身是很难跳出来的,还得依靠外部的帮助,只能说遇到事情首先要压制住自己反驳的欲望,寻求其他人的意见。

2023-07-23 20:08:31 298

原创 使用javax.validation.constraints校验参数合法性

尽管提供了丰富的基础注解,但有时我们还需要进行一些特定的校验操作。这时,我们可以通过自定义注解和校验器来实现这些需求。以下是一个示例,展示了如何创建一个自定义注解@Password首先,创建自定义注解@PasswordString message() default "密码必须包含至少一个大写字母、一个小写字母和一个数字";Class <?Class <?然后,创建自定义校验器=.*[a-z])(?=.*[A-Z])(?} }最后,在需要校验的字段上添加自定义注解@Password。

2023-07-02 20:53:51 2200

原创 Java Optional:让你的代码更优雅

Optional 是一个简单的容器类,用于封装可能为空的值。它可以帮助我们避免使用显式的 null 检查,并提供一种更声明式的方法来处理可能为空的值。通过使用 Optional,我们可以更容易地编写可读、可维护的代码,并减少潜在的 NullPointerException。

2023-06-24 16:28:26 396

原创 ChatGPT函数调用初体验:让ChatGPT具备抓取网页文本的能力

一个示例看懂,如何使用ChatGPT的函数调用能力。

2023-06-17 21:01:53 3778

原创 如何使用ChatGPT提升自己的“码”力?

ChatGPT是功能强大的工具,用于代码评审、优化、释义、解决方案、生成、设计模式和架构建议,以及学习新知识。虽无法完全替代人类,但可提高工作效率。注意其局限性,结合其他工具和人工审查使用。对初级工程师有用,优化代码和学习工具,提供广泛知识和指导。掌握ChatGPT的使用方法,更好应对技术挑战,不被取代。

2023-05-28 21:18:46 10884

原创 使用ffmpeg拼接两张图片

通过本篇文章的介绍,我们了解了使用FFmpeg拼接两张图片的方法。可以看到出来,使用ffmpeg将两张图片拼接在一起还是相当简单的。希望这篇文章能够对大家有所帮助,如果您有任何疑问或者建议,欢迎在评论区留言。

2023-05-03 21:45:25 1993 1

原创 ThreadPoolExecutor——高效处理并发任务的必备良器

ThreadPoolExecutor是Java中用于管理线程池的一个类,它能够创建和管理线程池,以提高应用程序的性能和可靠性。它具有灵活的线程池管理、高效的任务处理和可靠的异常处理等特点。尤其适用于任务量大、执行时间长、任务类型多样的应用场景,例如Web服务器、数据库连接池、文件处理等。通过合理地设置线程池参数、处理任务和异常、监控和调优线程池,可以提高应用程序的性能和可靠性,避免任务丢失或线程池崩溃的问题。

2023-05-01 16:36:05 2170

原创 从CPU的视角看 多线程代码为什么那么难写!

本文从CPU和内存的发展历程出发,分析了多线程编程中数据一致性和线程安全问题的产生原因。为了解决这些问题,编程语言中引入了各种关键词和工具,合理使用这些工具能在关键操作上保证线程安全,提高代码运行速度。

2023-04-29 10:29:17 1699

原创 使用ffmpeg缩小视频体积的几种方式

随着视频制作的普及,视频文件的体积也越来越大,给存储和传输带来了很大的困扰。为了解决这个问题,我们可以使用FFmpeg这个强大的工具来缩小视频的体积。本文将介绍三种常用的方法:调整视频的分辨率、调整视频的码率和使用更高效的视频编码格式。

2023-04-16 19:46:37 5700

原创 Linux parallel 命令使用手册

GNU Parallel是一个强大的并行计算工具,可以帮助您加速命令行作业的执行,提高系统资源利用率,以及处理大量的数据和作业。总之,GNU Parallel是一个非常有用的工具,可以帮助您更好地管理和处理数据,提高工作效率和准确性。如果您需要处理大量的数据和作业,或者需要利用多个CPU核心和计算机节点来执行作业,那么GNU Parallel是一个非常好的选择。GNU Parallel是一个强大的并行计算工具,可以帮助您加速命令行作业的执行,提高系统资源利用率,以及处理大量的数据和作业。

2023-04-09 22:43:44 3043

原创 为什么说过早优化是万恶之源?

作为一名在IT领域摸爬滚打多年的工程师,我深有体会地认识到过早优化是软件开发中的一大陷阱。在软件开发的初期,我们可能会过于关注代码的性能问题,而忽略了代码的可读性、可维护性和可扩展性。这种做法可能会导致代码的复杂性增加,降低代码的可读性和可维护性,甚至可能会浪费大量的开发时间和资源。在软件开发过程中,我们应该避免过早优化,而是优先考虑代码的可读性、可维护性和可扩展性。当需要进行性能优化时,应该在代码的基础上进行优化,通过分析性能瓶颈、优化算法和数据结构等方法来提高代码的性能和效率。

2023-04-02 17:11:15 19226 8

原创 人工智能未来是否会取代人类程序员?

当然,换个视角思考,人工智能的进步也在推动程序员工作的变化。人工智能可以帮助程序员完成一些重复和耗时的任务,从而提高工作效率和产出,比如像Github推出的CoPilot,据说在某些场景下可以提升60%的编码速度。但是,程序员的工作内容并不仅仅是编写代码。这个话题在近期来引起了很大讨论,尤其是当GPT4发布后,其展现出来的能力让很多岗位的从业者战战兢兢,比如像程序员,甚至有大佬跳出说三年 AI一定会取代程序员。综上,尽管人工智能在某些方面具有威胁,但作为一个整体,人工智能很难完全替代人类程序员。

2023-03-19 21:27:33 1056

原创 深入理解Spring的事件通知机制

Spring的事件通知机制是一种灵活方便的组件通讯方式,在不同的业务场景中都有广泛的应用。通过本文的介绍,我们可以了解到Spring事件通知机制的原理、使用方法和代码示例,以及将其与其他Spring组件集成的一些技巧。希望这篇文章能够帮助大家更深入地理解Spring框架。

2023-03-19 08:34:46 581

原创 Linux xargs命令介绍

Linux 中的 `xargs` 命令是一个非常有用的命令行工具,可以将一些参数集合传递给其他命令作为参数,并利用指定的命令进行处理。它可以帮助我们批量处理文件,执行一些需要多个参数的命令,并且支持并发操作。

2023-03-18 21:28:13 2860

原创 Java高并发之CyclicBarrier简介

CyclicBarrier 是一种非常有用的同步工具,它可以让多个线程在一个屏障点处等待,直到所有线程都到达该点后,才能继续执行。CyclicBarrier 可以用于协调多个线程的执行,以便它们可以在某个点上同步执行。CyclicBarrier 还支持可重用、回调函数和额外操作等高级用法,可以满足各种同步需求。

2023-03-12 21:58:09 378

原创 聊一聊过度设计!

什么是过度设计?如何避免过度设计?

2023-02-26 22:46:02 3053 4

原创 详解Redisson分布式限流的实现原理

多图详解Redisson中RRateLimiter分布式限流的实现原理。

2023-02-11 19:58:20 2150 2

原创 Java中使用HashMap时指定初始化容量性能一定会更好吗?

一些Java编程老手在做CodeReview时,都会告诉其他人,使用HashMap时建议指定容量大小,原因是指定容量后,代码性能会更好一些。后来随着阿里Java开发手册在业内广为传播,这一点早已深入人心,我自己也早已习惯在使用HashMap时指定容量大小。但我今天突发奇想,想知道指定容量和不指定容量时性能究竟有多少的差异,测试部分测试数据的结果让我大跌眼睛,有些情况下指定容量的性能还比不指定容量时差!!

2023-02-04 23:45:14 686

原创 如何用ffmpeg截取视频片段&截取时间不准确的坑

之前在工作中,有遇到需要程序化截取视频片段的场景,这里使用ffmpeg命令行就可以很容易实现,这里也记录下我们使用过程中遇到的坑,希望对大家也有所帮助。这里的参数-c:v copy指的是复用原始视频的编码格式,如果想切换视频编码也可以直接指定,比如(关于修改视频和音频编码的问题,后续会继续出一篇博客)。这里需要注意的是。

2023-01-31 00:19:06 5611 4

原创 XINDOO的2022年年终总结

已经好几个月没有认认真真写一篇博客了,借着年底静下心来认认真真写一篇年终总结,这也是我人生中第10篇的年终总结了。先看下去年立的flag,不用想去年立的flag一个都没完成。首先1 算是勉强及格;2 redis的博客一篇没写;3 一行代码没写;4 立flag时带的人因公司调整 run了(你懂得);5 不要问我什么时候结婚,问就是明年。如果用一句话概括下过去的一年,那就是,当然我也知道在这样的大环境下,我的状态虽然不算太好,但也算还可以的了,希望大家在2023年能有更美好的工作和生活吧。

2022-12-31 21:16:27 844 2

原创 使用ffmpeg将视频转成HLS(m3u8)格式

HLS (HTTP Live Streaming)是苹果推出的视频流协议,HLS格式的视频包含一个m3u8文本文件,以及众多的.ts的视频片段,而m3u8文本文件的作用就是将这些ts片段索引起来。这里有个坑,当我用上面命令行生成hls视频后,我发现每个ts的时长不是我指定的2s,而是10s。查阅资料后发现,ts切片的大小严格依赖于原始视频的GOP大小,因为必选保证一个ts内至少包含一个GOP,否则这个ts分片就无法使用。这个参数的作用就是让视频GOP大小为2s,这样就能保证ts分片大小是我们想要的2s了。

2022-11-14 10:03:33 4634

原创 用ffmpeg将视频转成gif动图

今天分享一个我制作表情包的技巧。现在视频编辑的门槛已经非常低了,只要装个剪映稍微学一下,很容易就能把你想要的内容剪出来,真的是有手就行。但是视频剪出来的视频是无法直接用做表情包的,只有gif格式的动图才是真正可以用的表情包。我这里分享一些用ffmpeg来生成gif动图的命令行示例,助力大家生产出更多有趣的表情包。是不是相当简单。

2022-10-30 22:12:15 7254

原创 在Springboot HandlerInterceptor中获取GET和POST请求参数

当然上游请求的时候可以在请求参数里带上他们的业务来源,我们直接根据业务来源路由即可,实际上最开始我们也是这么做的。说一个最近工作中遇到的事,我们系统因为业务发展的问题,针对不同用户群体做了两套系统(B系统和S系统),底层基础功能一样,但偏上层的业务有差异,最近我们想将底层基础功能提供一个统一的入口,所以就新起了一个类似业务网关的服务,把两个系统的接口封装一层,提供一个统一的接口出去,然后B业务的请求转发的B系统,S业务的请求转发到S系统。幸运的是,我们自己其实可以通过请求中的id信息来判断出是哪个业务的。

2022-10-22 18:20:19 5065 5

原创 做得好 vs 做得快?

今天聊一个有意思的话题,假如老板让你做个新的系统,你是选择先把功能做起来至于扩展性和可靠性以后再考虑,还是设计一个非常牛逼的系统架构,可以满足未来很多年的发展。前一段时间,某个CSDN技术交流群里有个小伙伴问用户系统怎么设计,然后就有另外的小伙伴上来就给了很高大上的建议,什么用户、角色、权限、分库分表…… 都给考虑了,算算人力,没几个月做不出来。然后我以半开玩笑的口吻说:别搞那么复杂,先用一个用户表,再加上权限和角色字段区分就可以了,,没有什么问题是加一个字段解决不了的,如果有就再加一个字段。

2022-10-07 19:41:57 5029 26

原创 谷歌Guava LoadingCache介绍

在工作中,加Cache是非常常见的一种性能优化手段,操作系统底层、计算机硬件层为了性能优化加了各种各样的Cache,当然大多数都是对应用层透明的。但如果你想在应用层加Cache的话,可能就需要你自己实现了。其实在Java环境下,Cache有各种各样的选择,比如最初级的你可以直接用HashMap实现一个Cache,不过你得自己关注下数据加载和淘汰的策略。

2022-10-06 14:18:27 1549

原创 一万小时真的能成为专家吗?

大家可能对一万小时定律耳熟能详了, 作家格拉德威尔在《异类》一书中说道:“人们眼中的天才之所以卓越非凡,并非天资超人一等,而是付出了持续不断的努力。一万小时的锤炼是任何人从平凡变成世界级大师的必要条件。” 这就是“一万小时定律”。作者的原意是要在某个领域成为专家,至少要投入一万小时的时间。那么只要在某个领域投入超过一万小时,就能成为该领域的专家?

2022-09-20 21:30:13 11824 16

原创 聊聊Redis的数据热点问题

什么是Redis热点?Redis热点问题为什么会极大地影响整个集群的性能?如何避免Redis数据热点?热点问题如何排查?热点问题如何解决?

2022-09-11 22:53:23 6033 5

原创 用Netty实现WebSocket网络聊天室

最近学习Netty,学习到WebSocket一章节,将Netty中WebSocket的样例代码做了一些简单的改造,实现了一个简易的WebSocket网络聊天室,源码并非完全自己实现,只是将一些别人的代码做了下整合改造,今分享至此,希望对大家学习Netty有所帮助。 ...

2022-08-28 19:42:51 2640

workflow.zip

Alfred 结合一些workflow,很多繁琐的工作变得非常简单,比如之前百度搜索一个东西,需要打开浏览器,然后打开百度,再输入要搜的词,再点搜索一套组合拳下来几十秒就过去了,有了Alfred 快捷键+触发词+搜索词+回车 几秒钟搞定。大大提高效率。

2019-08-19

2014年蓝桥杯JavaB预赛题目

2014年蓝桥杯JavaB预赛题目,最新。

2014-03-23

ACM 2013暑假 多校训练9标程+解题报告

ACM 2013暑假 多校训练9标程+解题报告 由watashi命题。

2013-09-06

ACM 2013暑假 多校训练8标程+解题报告

ACM 2013暑假 多校训练8标程+解题报告,由电子科技大学ACM集训队友情命题。

2013-08-15

ACM 2013 暑假 多校训练7标程+解题报告

ACM 2013 暑假 多校训练7标程+解题报告,由电子科技大学ACM集训队友情命题。

2013-08-15

ACM 2013暑假多校训练7标程+解题报告

2013暑假多校训练7标程+解题报告,复旦大学ACM集训队友情命题。

2013-08-13

2013多校训练6标程+解题报告

2013多校训练6标程,解题报告,由麻省理工命题。

2013-08-08

2013 hdoj 暑假多校训练5标程+解题报告

2013 hdoj 暑假多校训练5标程+解题报告

2013-08-07

hdoj 2013 多校训练4标程+解题报告

hdoj 2013 多校训练3标程+解题报告

2013-08-05

hdoj 2013 多校训练2标程+解题报告

hdoj 2013 多校训练2标程+解题报告

2013-08-05

2013山东省ACM省赛

山东省2013浪潮杯ACM程序设计大赛(2013山东省省赛),包含所有题目描述,测试输入输出样例和标准程序。

2013-06-13

传智播客全集种子

传智播客全集种子,包含传智播客java、网页开发、嵌入式、asp.net等多个优秀的视频资源。

2013-05-06

《OpenCL异构计算》全书所有插图及实现代码

《OpenCL异构计算》书由AMD与美国东北大学的多位专业人士联合撰写,包括: - AMD OpenCL架构师Benedict Gaster - AMD技术骨干Lee Howes - 东北大学计算机架构研究实验室(NUCAR)主管、信息安全保障研究院(IIA)联合主管、工程学院副院长David R. Kaeli - 东北大学电气与计算机工程系博士研究生Perhaad Mistry - 东北大学电气与计算机工程系博士研究生Dana Schaa 《OpenCL异构计算》于2012八月份出版发行,提供纸质和电子版两种格式,售价69.95美元。 同时《OpenCL异构计算》已被张云泉,张先轶,龙国平,姚继峰译为中文版,并由清华大学出版社出版。这里包含此书中的所有插图和代码。

2013-04-19

红黑树 red-black

红黑树作者Robert Sedgewick讲述红黑树的ppt,最好的红黑树讲解,最本质的红黑树讲解。算法导论上的红黑树讲解乏味难懂,作者仅几张ppt就将红黑树给你讲述的明明白白。

2013-04-19

acm常用数据公式表

acm最常用数据公式表,包括各种算法时间复杂度、数论、计算几何公式。

2013-04-19

hdoj最新离线版

hdoj1000-2223题,是直接将网页制作成chm文件,方便断网或没有网络时练题,而且在有网络时可以自动连接到hdoj,可以浏览更多信息。

2012-10-07

acm Hdoj 离线版 1000-3000题 可搜索查找

acm Hdoj 离线版 从1000-3000题都有 可以搜索查找 非chm 是目前可以页面查找的最新版 hdu论坛有人制作了chm文档,但是却不能查找,没有任何的功能 exe文档,任何平台都可以运行,界面友好····页面链接都有效。 支持上线链接,离线可以查找 标签 打印 改变文字大小等等

2012-10-07

算法导论 第三版英文版 有索引

《算法导论》原书名——《Introduction to Algorithms》,是一本十分经典的计算机算法书籍,与高德纳(Donald E.Knuth)的《计算机程序设计艺术》(《The Art Of Computer Programming》)相媲美。 《算法导论》由Thomas H.Cormen、Charles E.Leiserson、Ronald L.Rivest、Clifford Stein四人合作编著(其中Clifford Stein是第二版开始参与的合著者)。本书的最大特点就是将严谨性和全面性融入在了一起。

2012-07-02

hdoj 2013 多校训练3标程+解题报告

hdoj 2013 多校训练3标程+解题报告

2011-08-06

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除