dp经典问题:LCS问题 最长公共子序列(Longest Common Subsequence, LCS)问题 是寻找两个字符串中最长的子序列,使得这个子序列在两个字符串中出现的相对顺序保持一致,但不要求连续
动态规划:基本概念 **动态规划(Dynamic Programming, DP)** 是一种算法设计技巧,通常用来解决具有重叠子问题和最优子结构性质的问题。它通过将问题分解为更小的子问题,逐步解决这些子问题并将结果存储起来,以避免重复计算,从而提高效率。
MySQL基础:掌握增删改查 在数据库管理系统领域,MySQL以其强大的功能、开源性质和广泛的应用而著称。无论是在开发新应用还是维护现有系统中,对MySQL基本操作的理解和掌握是必不可少的。这篇博客将带你快速了解MySQL中的基本增删改查操作,即数据库管理的核心。
Java学习—线程的创建 继承Thread类:适用于简单的场景,但不推荐因为它限制了你的类继承其他类。实现Runnable接口:更灵活,允许你的类继承其他类,但不能返回结果或抛出检查异常。实现Callable接口:允许返回值和抛出异常,通常与结合使用,这是执行多线程任务的更强大、更灵活的方式。通常,推荐使用实现Runnable接口或Callable接口的方法来创建线程,因为这两种方式更灵活,并允许线程类与其他类进行组合。如果你需要线程执行结果或想要处理执行过程中的异常,那么实现Callable接口是更好的选择。
Java学习—字符流 在 Java 中,字符流主要用于处理字符数据,比如文本文件。字符流直接以字符为单位进行读写操作,自动处理字符与底层字节之间的转换,因此非常适合处理包含文本数据的文件。Java 中处理字符流的核心抽象类是Reader和Writer。
Java学习—FileInputStream 是java.io包中的一个类,用于从文件中读取数据(以字节为单位)。它是一个输入流,可以读取任何类型的文件,比如文本文件、图像或其他二进制文件。继承自抽象类,提供了各种读取方法。
Java学习—Stream流 Java 8引入的Stream API是对集合操作的一种高级抽象。Stream API不仅使代码更加简洁易读,还引入了函数式编程的强大功能,使得对集合的操作更加灵活和强大。让我们更详细地探讨Stream的核心概念、操作以及它在实际编程中的应用。
Java学习—entries获取键值对 在Java中,entries通常不是一个独立的关键字或特定的语法元素,而是在处理集合、特别是映射(Maps)时,用于引用映射中的键值对集合的术语。最常见的使用场景是在遍历Map时,entrySet()方法会被用来获取映射的键值对视图,每个元素都是这个映射的一个条目(Entry),而这些条目(entries)表示了映射中的键值对。
Java学习—Collections工具类 在Java的世界里,集合框架是不可或缺的一部分,它为存储和操作一组对象提供了一套统一的接口和实现。而在这个框架中,类以其强大的工具方法,为操作集合提供了极大的便利。本篇博客将带你深入探索类的核心功能,并通过一个综合示例展示如何在实际应用中使用这些方法。
Java学习—Treeset的两种排序方法 TreeSet提供了灵活的排序机制,既可以利用Java对象的自然顺序,也可以通过提供自定义的Comparator来实现特定的排序逻辑。选择哪种排序方式取决于你的具体需求。自然排序是对实现了Comparable接口的对象的一种直观排序方式,而定制排序则提供了更多的灵活性,允许定义更加复杂的排序规则。