当前位置: 首页 > news >正文

6.5 note

分区起止位置标记

class Solution {
public:
    vector<int> partitionLabels(string s) {
        unordered_map<char, int> lastPos;

// 记录每个字符最后出现的位置
        int n = s.size();
        for (int i = 0; i < n; ++i) {
            lastPos[s[i]] = i;
        }

        vector<int> ret;
        int start = 0;       
        int end = 0;     
   

        for (int i = 0; i < n; ++i)

         {  //遍历字符串
            end = max(end, lastPos[s[i]]); // 更新


            if (i == end)

            {      // 到达终点
                ret.push_back(end - start + 1);

                start = i + 1;             // 下一个起点
            }
        }
        return ret;
    }
};
 

奇偶 不另开两队列

+2  实现ret的方法

class Solution {
public:
    vector<int> rearrangeArray(vector<int>& nums) {
        int n = nums.size();
        int i = 0, j = 1;
        vector<int> ret(n);
        for (int num : nums) {
            if (num > 0) {
                ret[i] = num;
                i += 2;

            } else {
                ret[j] = num;
                j += 2;
            }
        }
        return ret;
    }
};

 

股票的资本损益

select 

    stock_name,

    sum(case when operation='buy' then -price else price end ) as 'capital_gain_loss'

from 

    Stocks

group by 

    stock_name


从股票交易表(Stocks)里,按股票名称分组统计买卖后的资金盈亏。
 
- 核心逻辑:
- 遇到买入操作(buy),用 -price 表示资金减少(花钱买股票);
- 遇到卖出或其他操作,用 +price 表示资金增加(卖股票赚钱);
- 最后把同一只股票的所有操作金额相加(sum),得出这只股票的总盈亏(capital_gain_loss)。
 
举例:
若某股票买入2次(价格100、200),卖出1次(价格300),
计算为: -100 -200 +300 = 0 ,即不赚不亏。

C++ 的  explicit  关键字用于禁止构造函数的隐式类型转换

- 没有  explicit  时:若构造函数只有一个参数,编译器会自动用该参数创建对象(隐式转换)。

例: int a = 1; MyClass obj = a; (假设  MyClass  有  MyClass(int)  构造函数,会隐式用  a  创建  obj )。

- 加上  explicit  后:禁止这种隐式转换,必须显式创建对象。

例: MyClass obj(a); (必须用括号明确调用构造函数)。

 

作用:避免意外的类型转换,让代码意图更清晰,减少潜在 bug。

 

heap的实现

 

 

 二分查找

 

 

递归转动态规划

 

cpu vs gpu

 

相关文章:

  • DJango项目
  • v1.0.1版本更新·2025年5月22日发布-优雅草星云物联网AI智控系统
  • 打造高效多模态RAG系统:原理与评测方法详解
  • 最新研究揭示云端大语言模型防护机制的成效与缺陷
  • 《从0到1开启EDA之旅:解锁电子设计新世界》
  • JAVASCRIPT 简化版数据库--智能编程——仙盟创梦IDE
  • 亲测解决self.transform is not exist
  • Vue3.5 企业级管理系统实战(二十三):权限指令
  • 深入理解JavaScript设计模式之闭包与高阶函数
  • 《计算机是怎么跑起来的》第二章读后感
  • C++信号处理程序解析与改进
  • OpenCV在图像上绘制文字示例
  • 【深度学习】为什么2个3×3的卷积可以相当于一个5×5的卷积核?为什么3个3×3的卷积相当于一个7×7的卷积核,到底区别在哪里?我们该如何使用?
  • 探索未知惊喜,盲盒抽卡机小程序系统开发新启航
  • AMFCNN-RKD:齿轮故障诊断的轻量级多传感器融合模型详解(python代码复现)
  • 用函数实现模块化程序设计(适合考研、专升本)
  • 【C++项目】负载均衡在线OJ系统-2
  • 深入学习RabbitMQ队列的知识
  • 第11期_网站搭建_极简云 单码网络验证修复版本 虚拟主机搭建笔记
  • CLIP多模态大模型的优势及其在边缘计算中的应用
  • 辛集建设局网站/网络营销策略包括
  • 深圳视频seo/南宁seo内部优化
  • 长春专业做网站的公司排名/seo中心
  • 网站建设常见的问题/网站seo思路
  • 规模以上工业企业个数/电商seo引流
  • 网站建设教程突/桂平网络推广