根据一级分类Id获取专辑标签(内连接,一对多)

news2024/9/23 16:02:14

文章目录

      • base_attribute
      • base_attribute_value
  • 1、BaseAttribute
  • 2、BaseAttributeValue
  • 3、BaseCategoryApiController --》findAttribute()
  • 4、BaseCategoryServiceImpl --》findAttribute()
  • 5、BaseAttributeMapper
  • 6、BaseAttributeMapper.xml

当选择完专辑分类之后,就会发送请求获取专辑标签:

在这里插入图片描述
鼠标点击选择标签,效果如下:1对多
在这里插入图片描述
对应表:base_attribute、base_attribute_value
在这里插入图片描述

base_attribute

mysql> select * from base_attribute;
+----+--------------+-----------------+---------------------+---------------------+------------+
| id | category1_id | attribute_name  | create_time         | update_time         | is_deleted |
+----+--------------+-----------------+---------------------+---------------------+------------+
|  1 |            2 | 有声书分类      | 2023-03-20 15:39:12 | 2023-03-20 15:39:12 |          0 |
|  2 |            2 | 播讲形式        | 2023-03-20 15:39:12 | 2023-03-20 15:39:12 |          0 |
|  3 |            2 | 是否付费        | 2023-03-20 15:39:12 | 2023-03-20 15:39:12 |          0 |
|  4 |            2 | 是否完本        | 2023-03-20 15:39:12 | 2023-03-20 15:39:12 |          0 |
|  5 |            2 | 是否新品        | 2023-03-20 15:39:12 | 2023-03-20 15:39:12 |          0 |
|  6 |           10 | 是否付费        | 2023-03-20 15:53:23 | 2023-03-20 15:53:23 |          0 |
|  7 |           10 | 是否完本        | 2023-03-20 15:53:23 | 2023-03-20 15:53:23 |          0 |
|  8 |           11 | 是否付费        | 2023-03-20 15:53:23 | 2023-03-20 15:58:02 |          0 |
|  9 |           11 | 是否完本        | 2023-03-20 15:58:02 | 2023-03-20 15:58:02 |          0 |
| 10 |            8 | 创作团体        | 2023-03-20 15:58:02 | 2023-03-20 15:58:02 |          0 |
| 11 |            8 | 是否付费        | 2023-03-20 15:58:02 | 2023-03-20 15:58:02 |          0 |
| 12 |            8 | 是否完结        | 2023-03-20 15:58:02 | 2023-03-20 15:58:02 |          0 |
| 13 |            6 | 是否付费        | 2023-03-20 16:04:13 | 2023-03-20 16:04:13 |          0 |
| 14 |            6 | 是否完结        | 2023-03-20 16:04:13 | 2023-03-20 16:04:13 |          0 |
| 15 |            5 | 适合年龄        | 2023-03-20 16:04:13 | 2023-03-20 16:04:13 |          0 |
| 16 |            5 | 是否完结        | 2023-03-20 16:04:13 | 2023-03-20 16:04:13 |          0 |
| 17 |            5 | 是否付费        | 2023-03-20 16:04:13 | 2023-03-20 16:04:13 |          0 |
| 18 |           12 | 是否付费        | 2023-03-20 16:04:13 | 2023-03-20 16:04:13 |          0 |
| 19 |           12 | 是否完结        | 2023-03-20 16:04:13 | 2023-03-20 16:04:13 |          0 |
+----+--------------+-----------------+---------------------+---------------------+------------+
19 rows in set (0.00 sec)

base_attribute_value

mysql> select * from base_attribute_value;
+----+--------------+--------------+---------------------+---------------------+------------+
| id | attribute_id | value_name   | create_time         | update_time         | is_deleted |
+----+--------------+--------------+---------------------+---------------------+------------+
|  1 |            1 | 男频小说     | 2023-03-20 16:15:34 | 2023-03-20 16:15:34 |          0 |
|  2 |            1 | 女频小说     | 2023-03-20 16:15:34 | 2023-03-20 16:15:34 |          0 |
|  3 |            2 | 多人         | 2023-03-20 16:15:34 | 2023-03-20 16:15:34 |          0 |
|  4 |            2 | 双人         | 2023-03-20 16:15:34 | 2023-03-20 16:15:34 |          0 |
|  5 |            2 | 单人         | 2023-03-20 16:15:34 | 2023-03-20 16:15:34 |          0 |
|  6 |            3 | 付费         | 2023-03-20 16:15:34 | 2023-03-20 16:15:34 |          0 |
|  7 |            3 | 免费         | 2023-03-20 16:15:34 | 2023-03-20 16:15:34 |          0 |
|  8 |            4 | 完结         | 2023-03-20 16:15:34 | 2023-03-20 16:15:34 |          0 |
|  9 |            4 | 连载中       | 2023-03-20 16:15:34 | 2023-03-20 16:15:34 |          0 |
| 10 |            5 | 新品         | 2023-03-20 16:15:34 | 2023-03-20 16:15:34 |          0 |
| 11 |            5 | 非新品       | 2023-03-20 16:15:34 | 2023-03-20 16:15:34 |          0 |
| 12 |            6 | 付费         | 2023-03-20 16:15:34 | 2023-03-20 16:15:34 |          0 |
| 13 |            6 | 免费         | 2023-03-20 16:15:34 | 2023-03-20 16:15:34 |          0 |
| 14 |            7 | 完结         | 2023-03-20 16:15:34 | 2023-03-20 16:15:34 |          0 |
| 15 |            7 | 连载中       | 2023-03-20 16:15:34 | 2023-03-20 16:15:34 |          0 |
| 16 |            8 | 付费         | 2023-03-20 16:15:34 | 2023-03-20 16:15:34 |          0 |
| 17 |            8 | 免费         | 2023-03-20 16:15:34 | 2023-03-20 16:15:34 |          0 |
| 18 |            9 | 完结         | 2023-03-20 16:15:34 | 2023-03-20 16:15:34 |          0 |
| 19 |            9 | 连载中       | 2023-03-20 16:15:34 | 2023-03-20 16:15:34 |          0 |
| 20 |           10 | 德云社       | 2023-03-20 16:15:34 | 2023-03-20 16:15:34 |          0 |
| 21 |           10 | 其他         | 2023-03-20 16:15:34 | 2023-03-20 16:15:34 |          0 |
| 22 |           11 | 付费         | 2023-03-20 16:15:34 | 2023-03-20 16:15:34 |          0 |
| 23 |           11 | 免费         | 2023-03-20 16:15:34 | 2023-03-20 16:15:34 |          0 |
| 24 |           12 | 完结         | 2023-03-20 16:15:34 | 2023-03-20 16:15:34 |          0 |
| 25 |           12 | 连载中       | 2023-03-20 16:15:34 | 2023-03-20 16:15:34 |          0 |
| 26 |           13 | 付费         | 2023-03-20 16:15:34 | 2023-03-20 16:15:34 |          0 |
| 27 |           13 | 免费         | 2023-03-20 16:15:34 | 2023-03-20 16:15:34 |          0 |
| 28 |           14 | 完结         | 2023-03-20 16:15:34 | 2023-03-20 16:15:34 |          0 |
| 29 |           14 | 连载中       | 2023-03-20 16:15:34 | 2023-03-20 16:15:34 |          0 |
| 30 |           15 | 0-3| 2023-03-20 16:15:34 | 2023-03-20 16:15:34 |          0 |
| 31 |           15 | 3-6| 2023-03-20 16:15:34 | 2023-03-20 16:15:34 |          0 |
| 32 |           15 | 6岁以上      | 2023-03-20 16:15:34 | 2023-03-20 16:15:34 |          0 |
| 33 |           16 | 完结         | 2023-03-20 16:15:34 | 2023-03-20 16:15:34 |          0 |
| 34 |           16 | 连载中       | 2023-03-20 16:15:34 | 2023-03-20 16:15:34 |          0 |
| 35 |           17 | 付费         | 2023-03-20 16:15:34 | 2023-03-20 16:15:34 |          0 |
| 36 |           17 | 免费         | 2023-03-20 16:15:34 | 2023-03-20 16:15:34 |          0 |
| 37 |           18 | 付费         | 2023-03-20 16:15:34 | 2023-03-20 16:15:34 |          0 |
| 38 |           18 | 免费         | 2023-03-20 16:15:34 | 2023-03-20 16:15:34 |          0 |
| 39 |           19 | 完结         | 2023-03-20 16:15:34 | 2023-03-20 16:15:34 |          0 |
| 40 |           19 | 连载中       | 2023-03-20 16:15:34 | 2023-03-20 16:15:34 |          0 |
+----+--------------+--------------+---------------------+---------------------+------------+
40 rows in set (0.00 sec)

请求路径:/api/album/category/findAttribute/{categoryId}

请求参数:占位符参数

请求方式:get

返回结果集:

{
    "code": 200,
    "message": "成功",
    "data": [
        {
            "id": 1,
            "createTime": null,
            "category1Id": 2,
            "attributeName": "有声书分类",
            "attributeValueList": [
                {
                    "id": 1,
                    "createTime": null,
                    "attributeId": 1,
                    "valueName": "男频小说"
                },
                {
                    "id": 2,
                    "createTime": null,
                    "attributeId": 1,
                    "valueName": "女频小说"
                }
            ]
        },
        {
            "id": 2,
            "createTime": null,
            "category1Id": 2,
            "attributeName": "播讲形式",
            "attributeValueList": [
                {
                    "id": 3,
                    "createTime": null,
                    "attributeId": 2,
                    "valueName": "多人"
                },
                {
                    "id": 4,
                    "createTime": null,
                    "attributeId": 2,
                    "valueName": "双人"
                },
                {
                    "id": 5,
                    "createTime": null,
                    "attributeId": 2,
                    "valueName": "单人"
                }
            ]
        },
        {
            "id": 3,
            "createTime": null,
            "category1Id": 2,
            "attributeName": "是否付费",
            "attributeValueList": [
                {
                    "id": 6,
                    "createTime": null,
                    "attributeId": 3,
                    "valueName": "付费"
                },
                {
                    "id": 7,
                    "createTime": null,
                    "attributeId": 3,
                    "valueName": "免费"
                }
            ]
        },
        {
            "id": 4,
            "createTime": null,
            "category1Id": 2,
            "attributeName": "是否完本",
            "attributeValueList": [
                {
                    "id": 8,
                    "createTime": null,
                    "attributeId": 4,
                    "valueName": "完结"
                },
                {
                    "id": 9,
                    "createTime": null,
                    "attributeId": 4,
                    "valueName": "连载中"
                }
            ]
        },
        {
            "id": 5,
            "createTime": null,
            "category1Id": 2,
            "attributeName": "是否新品",
            "attributeValueList": [
                {
                    "id": 10,
                    "createTime": null,
                    "attributeId": 5,
                    "valueName": "新品"
                },
                {
                    "id": 11,
                    "createTime": null,
                    "attributeId": 5,
                    "valueName": "非新品"
                }
            ]
        }
    ]
}

1、BaseAttribute

package com.atguigu.tingshu.model.album;

import com.atguigu.tingshu.model.base.BaseEntity;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableName;
import io.swagger.v3.oas.annotations.media.Schema;
import lombok.Data;

import java.util.List;

@Data
@Schema(description = "BaseAttribute")
@TableName("base_attribute")
public class BaseAttribute extends BaseEntity {

	private static final long serialVersionUID = 1L;

	@Schema(description = "一级分类id")
	@TableField("category1_id")
	private Long category1Id;

	@Schema(description = "属性显示名称")
	@TableField("attribute_name")
	private String attributeName;

	@TableField(exist = false)
	private List<BaseAttributeValue> attributeValueList;

}

2、BaseAttributeValue

package com.atguigu.tingshu.model.album;

import com.atguigu.tingshu.model.base.BaseEntity;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableName;
import io.swagger.v3.oas.annotations.media.Schema;
import lombok.Data;

@Data
@Schema(description = "BaseAttributeValue")
@TableName("base_attribute_value")
public class BaseAttributeValue extends BaseEntity {

	private static final long serialVersionUID = 1L;

	@Schema(description = "属性id")
	@TableField("attribute_id")
	private Long attributeId;

	@Schema(description = "属性值名称")
	@TableField("value_name")
	private String valueName;

}

3、BaseCategoryApiController --》findAttribute()

@Tag(name = "分类管理")
@RestController
@RequestMapping(value="/api/album/category")
@SuppressWarnings({"unchecked", "rawtypes"})
public class BaseCategoryApiController {
	/**
	 * 根据一级分类ID查询属性
	 *
	 * 该方法用于从数据库中查询与给定的一级分类ID相关的所有属性它通过HTTP GET请求的URL中提取一级分类ID,
	 * 然后调用业务服务来获取相应的属性列表最后,它返回一个包含查询到的属性列表的Result对象
	 *
	 * @param category1Id 从URL中获取的一级分类ID,用于查询特定分类的属性
	 * @return 返回一个Result对象,其中包含一个属性列表,这些属性与给定的一级分类ID相关
	 */
	@GetMapping("findAttribute/{category1Id}")
	public Result<List<BaseAttribute>> findAttribute(@PathVariable("category1Id") Long category1Id){
	    // 调用业务服务根据一级分类ID查询属性
	    List<BaseAttribute> baseAttributes = this.baseCategoryService.findAttribute(category1Id);

	    // 返回查询到的属性列表的Result对象
	    return Result.ok(baseAttributes);
	}
}

4、BaseCategoryServiceImpl --》findAttribute()

@Service
@SuppressWarnings({"unchecked", "rawtypes"})
public class BaseCategoryServiceImpl extends ServiceImpl<BaseCategory1Mapper, BaseCategory1> implements BaseCategoryService {
    @Override
    public List<BaseAttribute> findAttribute(Long category1Id) {

        return this.baseAttributeMapper.findAttribute(category1Id);
    }
}

5、BaseAttributeMapper

package com.atguigu.tingshu.album.mapper;

import com.atguigu.tingshu.model.album.BaseAttribute;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import org.apache.ibatis.annotations.Mapper;

import java.util.List;

@Mapper
public interface BaseAttributeMapper extends BaseMapper<BaseAttribute> {


    List<BaseAttribute> findAttribute(Long category1Id);
}

6、BaseAttributeMapper.xml

<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE mapper
PUBLIC "-//ibatis.apache.org//DTD Mapper 3.0//EN"
"http://ibatis.apache.org/dtd/ibatis-3-mapper.dtd">
<mapper namespace="com.atguigu.tingshu.album.mapper.BaseAttributeMapper">

    <resultMap id="attributeMap" type="com.atguigu.tingshu.model.album.BaseAttribute" autoMapping="true">
        <id column="id" property="id"></id>
        <collection property="attributeValueList" javaType="List" ofType="com.atguigu.tingshu.model.album.BaseAttributeValue" autoMapping="true">
            <id column="bav_id" property="id"/>
        </collection>
    </resultMap>

    <select id="findAttribute" resultMap="attributeMap">
        select ba.id, ba.category1_id, ba.attribute_name, bav.id bav_id, bav.attribute_id, bav.value_name from base_attribute ba
           inner join base_attribute_value bav on ba.id=bav.attribute_id
        where ba.category1_id=#{category1Id} and ba.is_deleted=0 and bav.is_deleted=0
    </select>
</mapper>


select * from base_attribute ba 
inner join base_attribute_value bav on ba.id=bav.attribute_id 
where ba.category1_id=2 and ba.is_deleted=0 and bav.is_deleted=0;
mysql> select * from base_attribute ba inner join base_attribute_value bav on ba.id=bav.attribute_id where ba.category1_id=2 and ba.is_deleted=0 and bav.is_deleted=0;
+----+--------------+-----------------+---------------------+---------------------+------------+----+--------------+--------------+---------------------+---------------------+------------+
| id | category1_id | attribute_name  | create_time         | update_time         | is_deleted | id | attribute_id | value_name   | create_time         | update_time         | is_deleted |
+----+--------------+-----------------+---------------------+---------------------+------------+----+--------------+--------------+---------------------+---------------------+------------+
|  1 |            2 | 有声书分类      | 2023-03-20 15:39:12 | 2023-03-20 15:39:12 |          0 |  1 |            1 | 男频小说     | 2023-03-20 16:15:34 | 2023-03-20 16:15:34 |          0 |
|  1 |            2 | 有声书分类      | 2023-03-20 15:39:12 | 2023-03-20 15:39:12 |          0 |  2 |            1 | 女频小说     | 2023-03-20 16:15:34 | 2023-03-20 16:15:34 |          0 |
|  2 |            2 | 播讲形式        | 2023-03-20 15:39:12 | 2023-03-20 15:39:12 |          0 |  3 |            2 | 多人         | 2023-03-20 16:15:34 | 2023-03-20 16:15:34 |          0 |
|  2 |            2 | 播讲形式        | 2023-03-20 15:39:12 | 2023-03-20 15:39:12 |          0 |  4 |            2 | 双人         | 2023-03-20 16:15:34 | 2023-03-20 16:15:34 |          0 |
|  2 |            2 | 播讲形式        | 2023-03-20 15:39:12 | 2023-03-20 15:39:12 |          0 |  5 |            2 | 单人         | 2023-03-20 16:15:34 | 2023-03-20 16:15:34 |          0 |
|  3 |            2 | 是否付费        | 2023-03-20 15:39:12 | 2023-03-20 15:39:12 |          0 |  6 |            3 | 付费         | 2023-03-20 16:15:34 | 2023-03-20 16:15:34 |          0 |
|  3 |            2 | 是否付费        | 2023-03-20 15:39:12 | 2023-03-20 15:39:12 |          0 |  7 |            3 | 免费         | 2023-03-20 16:15:34 | 2023-03-20 16:15:34 |          0 |
|  4 |            2 | 是否完本        | 2023-03-20 15:39:12 | 2023-03-20 15:39:12 |          0 |  8 |            4 | 完结         | 2023-03-20 16:15:34 | 2023-03-20 16:15:34 |          0 |
|  4 |            2 | 是否完本        | 2023-03-20 15:39:12 | 2023-03-20 15:39:12 |          0 |  9 |            4 | 连载中       | 2023-03-20 16:15:34 | 2023-03-20 16:15:34 |          0 |
|  5 |            2 | 是否新品        | 2023-03-20 15:39:12 | 2023-03-20 15:39:12 |          0 | 10 |            5 | 新品         | 2023-03-20 16:15:34 | 2023-03-20 16:15:34 |          0 |
|  5 |            2 | 是否新品        | 2023-03-20 15:39:12 | 2023-03-20 15:39:12 |          0 | 11 |            5 | 非新品       | 2023-03-20 16:15:34 | 2023-03-20 16:15:34 |          0 |
+----+--------------+-----------------+---------------------+---------------------+------------+----+--------------+--------------+---------------------+---------------------+------------+
11 rows in set (0.00 sec)

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

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

相关文章

如何进行Ubuntu磁盘空间深度清理?

近期使用AutoDL算力云&#xff0c;发现系统盘只有30G&#xff0c;数据盘只有50G&#xff0c;跑一个稍微大一点的模型&#xff0c;马上空间就拉爆了&#xff0c;现在做一个磁盘深度清理操作&#xff0c;看看效果。 清理前磁盘占用如下&#xff1a; 在 Ubuntu 系统中进行磁盘深度…

二、MySQL环境搭建

文章目录 1. MySQL的卸载步骤1&#xff1a;停止MySQL服务步骤2&#xff1a;软件的卸载步骤3&#xff1a;残余文件的清理步骤4&#xff1a;清理注册表&#xff08;选做&#xff09;步骤5&#xff1a;删除环境变量配置 2. MySQL的下载、安装、配置2.1 MySQL的4大版本2.2 软件的下…

Linux环境的JDK安装

1.搜索可用的jdk yum search jdk/(或者是要安装的版本java-11)2.安装需要的版本 yum install java-11-openjdk.x86_643.验证是否安装成功 java -version4.配置环境变量 通过yum安装的默认路径为&#xff1a;/usr/lib/jvm cd /etc/profile.d/ touch java_home.sh vim java_…

Linux线程同步与互斥

&#x1f30e;Linux线程同步与互斥 文章目录&#xff1a; Linux线程同步与互斥 Linux线程互斥 线程锁       互斥量Mutex         初始化互斥量的两种方式         申请锁方式         解除与销毁锁 问题解决及线程饥饿       互斥锁的底…

线性调频信号脉冲压缩并非是一个门信号

如果是频域是门信号&#xff0c;时域是sinc信号&#xff0c;时间越长震荡只会越小。图象是线性卷积做的&#xff0c;肯定没错。

如何写出高收录词的listing文案,先做好这一点

在亚马逊上&#xff0c;关键词是连接买家搜索与产品之间的桥梁&#xff0c;超过80%的购买行为都是通过搜索关键词开始的。因此&#xff0c;文案中包含的精准关键词越多&#xff0c;Listing越能匹配买家的需求&#xff0c;从而提高自然排名并优化广告效果。 亚马逊的收录分为静…

【CSS Tricks】在css中尝试一种新的颜色模型HSL

目录 引言浏览器支持性HSL介绍HSL相较于RGB的优势在哪&#xff1f;HSL在网页设计的应用场景如何用代码转换hslRGB转HSLHSL转RGBHEX格式的互转 总结 引言 本篇不会对rgb颜色模型或是hsl颜色模型的显色原理进行深入的探究&#xff0c;仅从前端开发角度去论述在工作中选择哪种比较…

C/C++指针的前世今生

前言 老早之前就想写这个内容了&#xff0c;打了草稿后闲置了两个月&#xff0c;因为其他事就没再动过这个东西了&#xff0c;今天翻草稿箱的时候发现了它&#xff0c;就把它完善出来&#xff0c;顺便我也学习学习。 正文 指针的前世今生 前面先说一下&#xff0c;故事是随…

【第十七章:Sentosa_DSML社区版-机器学习之异常检测】

【第十七章&#xff1a;Sentosa_DSML社区版-机器学习之异常检测】 机器学习异常检测是检测数据集中的异常数据的算子&#xff0c;一种高效的异常检测算法。它和随机森林类似&#xff0c;但每次选择划分属性和划分点&#xff08;值&#xff09;时都是随机的&#xff0c;而不是根…

前端——实现时钟 附带小例子

创建日期对象 toLocaleDateString() 获取日期 console.log(date.toLocaleDateString()) toLocaleTimeString() 获取时间 console.log(date.toLocaleTimeString()) toLocaleString() 获取日期和时间 console.log(date.toLocaleString()) date.getDay() 获取星期几 周日为…

VisualStudio的“应用代码更改“按钮功能

无意发现这个按钮&#xff0c;因为开发这么多年也没专门尝试这个按钮&#xff0c;于是好奇它的功能。 光标放在按钮上面提示了“应用代码更改”&#xff0c;于是猜想应该是在调试不断开的情况下支持热应用更改。 经过验证&#xff0c;功能确实如同猜想的一样&#xff0c;具体验…

Leetcode 1039. 多边形三角形剖分的最低得分 枚举型区间dp C++实现

问题&#xff1a;Leetcode 1039. 多边形三角形剖分的最低得分 你有一个凸的 n 边形&#xff0c;其每个顶点都有一个整数值。给定一个整数数组 values &#xff0c;其中 values[i] 是第 i 个顶点的值&#xff08;即 顺时针顺序 &#xff09;。 假设将多边形 剖分 为 n - 2 个三…

力扣(leetcode)每日一题 1014 最佳观光组合

题干 1014. 最佳观光组合 给你一个正整数数组 values&#xff0c;其中 values[i] 表示第 i 个观光景点的评分&#xff0c;并且两个景点 i 和 j 之间的 距离 为 j - i。 一对景点&#xff08;i < j&#xff09;组成的观光组合的得分为 values[i] values[j] i - j &#…

windows 出现身份验证错误,要求的函数不受支持

现象环境&#xff1a; win10 mstsc内网远程server2016&#xff0c;出现错误代码&#xff1a; 远程桌面连接出现身份验证错误。要求的函数不受支持。这可能是由于CredSSP加密数据库修正 出现身份验证错误 原因&#xff1a; 系统更新&#xff0c;微软系统补丁的更新将 Cred…

<刷题笔记> 力扣236题——二叉树的公共祖先

236. 二叉树的最近公共祖先 - 力扣&#xff08;LeetCode&#xff09; 题目解释&#xff1a; 我们以这棵树为例&#xff0c;来观察找不同的最近公共祖先有何特点&#xff1a; 思路一&#xff1a; 除了第二种情况&#xff0c;最近公共祖先满足&#xff1a;一个节点在他的左边&am…

现代LLM基本技术整理

0 开始之前 本文从Llama 3报告出发&#xff0c;基本整理一些现代LLM的技术。基本&#xff0c;是说对一些具体细节不会过于详尽&#xff0c;而是希望得到一篇相对全面&#xff0c;包括预训练&#xff0c;后训练&#xff0c;推理&#xff0c;又能介绍清楚一些具体技术&#xff0…

Hierarchical Video-Moment Retrieval and Step-Captioning

背景 为了激发人们对使用机器学习系统从这些基于文本查询的大型视频语料库中提取和总结重要信息的兴趣&#xff0c;在视频检索、时刻检索、视频摘要和视频字幕方面取得了进展。以前的工作通常侧重于独立解决这些任务&#xff1b;然而&#xff0c;所有这些任务都有一个共同的目标…

科研绘图系列:R语言连线点图(linechart dotplot)

文章目录 介绍加载R包导入数据数据预处理画图组合图形导出数据系统信息介绍 不同物种的强度和微生物的组成情况 加载R包 library("here") library("tidyverse") library("reshape2") library("vegan")

照片写真记录摄影作品记录网站源码

完美适应iPad&#xff0c;平板&#xff0c;手机竖屏不支持lazy&#xff0c;横屏可以&#xff0c;但建议使用平板查看效果&#xff0c; 有服务器直接上传解压使用&#xff0c;环境nginxphp&#xff0c; 没有服务器也没关系&#xff0c;可以直接使用html

Cherry Studio:开启AI智能工作的新篇章

引言 在当今快速发展的科技时代&#xff0c;如何高效利用人工智能技术提升工作效率&#xff0c;成为了各行各业专业人士的共同追求。&#x1f352; Cherry Studio 正是为此而生&#xff0c;它是一款支持多模型服务的桌面客户端&#xff0c;内置了超过 30 个行业的智能助手&…