真实业务算法

从会议室预订到快递配送:贪心算法在真实业务场景中的落地指南 本文探讨了贪心算法在会议室预订、物流装载和快递配送等真实业务场景中的高效应用。通过活动安排问题、最优装载问题和单源最短路问题的实际案例,展示了贪心算法如何提升资源调度效率、优化物流成本并缩短配送路径,为企业运营带来显著价值。 阅读详情

业务需求

1、公司相同,数字仅有一位不同,且有2个(含)以上相同数字连续且位置一致;

例如:CSN3473和CSN3438   CSN323和CSN325

2、公司相同,相同数字位置不完全一致;

例如:CDG4963和CDG4639

3、公司不同:

航班号是三位数字的后两位数字相同且位置一致;

航班号是四位数字的后三位数字相同且位置一致;

例如: CCA107和CSN307    CSN6555和CSC8555

       CSH9201和CSZ8201    

5、其他未涵盖但发音或外形比较容易混淆或易引起误听误判的呼号

    例如:OMA20144和OMA20044

我的解决办法

 

        ///     判断两个航班号是否相似
        /// </summary>
        /// <param name="calsign1"></param>
        /// <param name="calsign2"></param>
        /// <returns></returns>
        private static bool IsSameFlight(string calsign1, string calsign2)
        {
            int x = 0;//标记字母个数
            int y = 0;//标记数字个数

            //航班号位数不相同不是相似航班
            if (calsign1.Length != calsign2.Length) return false;

            //航班号位数相同
            for (int i = 0; i < calsign1.Length; i++)
            {
                
                if (calsign1[i] == calsign2[i] && (calsign1[i] >= 'A' && calsign1[i] <= 'Z'))
                {
                    x++;
                    continue;
                }

                #region 公司相同时,数字为3位的情况
                else if (x >= 3 && (calsign1.Length - i == 3))
                {
                    for (int j = i; j < calsign1.Length; j++)
                    {
                        if (calsign1[j] != calsign2[j] && y < 2)
                        {
                            if (!(calsign1[i] >= 'A' && calsign1[i] <= 'Z'))
                            {
                                int count = 0;
                                for (int k = i; k < calsign1.Length; k++)
                                    for (int l = i; l < calsign1.Length; l++)
                                        if (calsign1[k] == calsign2[l])
                                        {
                                            count++;
                                            break;
                                        }
                                if (count == 3) return true;
                            }
                            return false;
                        }
                        else if (calsign1[j] == calsign2[j] && y < 2)
                        {
                            y++;
                            continue;
                        }
                        else return true;
                    }


                } 
                #endregion

                #region 公司相同时,数字为4位的情况
                else if (x >= 3 && (calsign1.Length - i == 4))
                {
                    for (int j = i; j < calsign1.Length; j++)
                    {
                        if (calsign1[j] != calsign2[j] && y < 2)
                        {
                            if (!(calsign1[i] >= 'A' && calsign1[i] <= 'Z'))
                            {
                                int count = 0;
                                for (int k = i; k < calsign1.Length; k++)
                                    for (int l = i; l < calsign1.Length; l++)
                                        if (calsign1[k] == calsign2[l])
                                        {
                                            count++;
                                            break;
                                        }
                                if (count == 4) return true;
                            }
                            return false;
                        }
                        else if (calsign1[j] == calsign2[j] && y < 2)
                        {
                            y++;
                            continue;
                        }
                        else if (calsign1[j] != calsign2[j] && y == 2 && (calsign1[j] == calsign2[j + 1] || calsign1[j + 1] == calsign2[j] || calsign1[j + 1] == calsign2[j + 1]))
                            return true;
                        else return false;
                    }
                } 
                #endregion

                #region 公司不同时
                else if (x < 3)
                {
                    if (calsign1.Length == 6)
                        for (int j = calsign1.Length - 1; j > 2; j--)
                        {
                            if (calsign1[j] == calsign2[j])
                            {
                                y++;
                                continue;
                            }
                            else if (y < 2) return false;
                            else if (y >= 2) return true;
                        }
                    else if (calsign1.Length == 7)
                        for (int j = calsign1.Length - 1; j > 2; j--)
                        {
                            if (calsign1[j] == calsign2[j])
                            {
                                y++;
                                continue;
                            }
                            else if (y < 3) return false;
                            else if (y >= 3) return true;
                        }
                } 
                #endregion

            }

            //其他情况暂时为不相似
            return false;
        }

项目是针对具体应用的,所以看从业务逻辑到实现的过程比代码本身要重要。  其实不外乎选择、循环等结构。

从‘摇老虎机’到‘优化APP推送’:epsilon-Greedy算法在真实业务场景下的落地实战 本文深入探讨了epsilon-Greedy算法在业务场景中的实际应用,从新闻推荐到优惠券发放,展示了如何通过动态调整探索与利用比例来优化决策。通过Python实战示例,详细解析了算法实现及业务约束下的调优策略,帮助开发者和产品经理有效提升核心业务指标。 阅读详情

相关推荐

SAP FICO - 外币交易实战:汇率类型配置与货币换算率管理

月底关账前的外币评估就像财务人的"期末考",OB59配置就是你的备考方案。最低值原则(Lowest value principle)最保守。它会比较原始汇率与评估日汇率,取不利方向确认损失。适合风险厌恶型企业,我在制造业客户中应用最多。重估法(Revalue only)更反映市场现状。无论盈亏都按最新汇率调整,适合交易性金融资产处理。有个基金公司客户就靠这个方法及时反映了外汇波动收益。最小差异金额(Minimum difference)是防骚扰设置。

weixin_42524708的博客 358

LRU算法变形记:当缓存策略遇上真实业务场景

本文深入探讨了LRU算法在电商秒杀等真实业务场景中的变形与应用。通过分析标准LRU的局限性,介绍了加权LRU和LRU-K等变种算法,帮助开发者根据业务需求定制高效缓存策略,提升系统性能。

weixin_29216957的博客 279

半导体物理-Si晶体生长方向<2>

Si(硅)晶体的生长方向是一个重要的概念,尤其在半导体工业中。这个概念涉及到晶体在生长过程中原子排列的方向,对晶体的性质和应用有重大影响。让我为您详细解释:理解Si晶体的生长方向对于半导体材料的研究和应用非常重要,它直接影响了最终器件的性能和制造工艺。在实际应用中,选择适当的生长方向可以优化器件性能,提高产品质量。

m0_37606066的博客 2996

机器学习真实落地:告别算法流程图,回归业务与数据本质

机器学习不是算法选择问题,而是业务理解、数据认知与工程实践的系统性工作。其核心原理在于将模糊的业务目标翻译为可计算的数据信号,并在真实约束下持续验证假设;技术价值体现在驱动业务动作改变、提升决策精度与降低试错成本;典型应用场景包括用户流失预警、医疗风险预测、供应链异常识别等需强领域知识介入的工业级任务。本文聚焦‘问题翻译器’构建、‘假设驱动实验’设计及‘业务闭环迭代’方法论,深入剖析特征工程中的业务意义保留、缺失值背后的因果推断、评估指标与损益对齐等关键实践,揭示被主流速查表掩盖的七类决定项目成败的隐性决策

weixin_33874713的博客 402

硬盘dma读写过程

保护模式中,pci上的硬盘dma读写方法

480

海康威视工业相机SDK二次开发实战:多相机同步采集与图像存储

本文详细介绍了海康威视工业相机SDK二次开发实战,包括多相机同步采集与图像存储的优化方案。通过MVS软件搭建开发环境,实现硬件与软件触发同步采集,并提供高效的图像存储管理技巧,帮助开发者提升工业视觉项目的效率与稳定性。

weixin_29168813的博客 666

AirNet相似航班号自动识别提示功能

1 相似航班号识别范围 在同一功能扇区内,两个及以上已与飞行计划相关的,并处于受管制状态的雷达标牌之间,进行相识航班号自动识别的判断。 当扇区合并后,判断范围为合并后的扇区。 2 识别规...

corvqougz537112134的博客 658

用电脑通过网口控制keysight示波器

Keysight HD304MSO示波器提供1GHz带宽、14位高精度ADC及10.1英寸触控屏,支持50μV低噪声信号捕获和1.3M波形/秒刷新率。配备4通道探头、逻辑分析仪接口及100Mpts存储深度,含故障诊断、FFT等高级功能。通过网线连接电脑安装TightVNC软件(示波器IP为169.254.163.24)可实现远程控制,相比U盘传输更高效。(149字)

johnboat的专栏 1136

【产品】业务场景常用算法学习笔记

YouTube 在2016年发表的论文《Deep Neural Networks for YouTube Recommendations》中提出了基于深度学习的一个超大规模分类模型(Candidate Generation,类似 skip-gram,采用方法:hierarchical softmax 和 negative sample),它把召回阶段建模为一个分类模型,其目标是根据上下文 C,用户 U,从集合 V 中找到时刻 t 最可能被观看的视频 Wt。一种完全依赖用户和物品之间行为关系的推荐算法。

summer 1361

【3】Ubuntu18.04下载与安装,以及中文输入法的安装

Ubuntu18.04下载与安装一、下载二、安装(在VMware 16 pro中安装Ubuntu18.04)三、Ubuntu中安装中文输入法1.检查 fcitx 框架2.安装输入法 一、下载 下载地址:Ubuntu Releases 往下拉,找到自己需要的安装版本(建议不要安装最新版,因为你在使用时候遇到的错误大多都是以前版本的,最新版本的,解决方案特别少) 我这里安装的是Ubuntu18.04 一般都是使用desktop版本的(desktop版和server版本的区别:请看这篇文章) 之后点击下载即

斯基的朦胧 1万+

容器化部署指南——Docker/K8s环境下的OpenClaw实践(附Dockerfile)

通过本文的详细指导,你已经掌握了OpenClaw在Docker和Kubernetes环境中的容器化部署方法。从基础镜像构建到高级部署策略,从开发环境到生产环境,你现在已经具备了完整的容器化部署能力。 容器化技术为OpenClaw提供了灵活、可扩展、可移植的部署方案,能够满足不同规模和需求的应用场景。通过合理使用Docker和Kubernetes,你可以实现高效的部署管理和运维自动化。 在实际应用中,建议根据具体的业务需求选择合适的部署策略,并结合监控、日志、安全等最佳实践,确保系统的稳定性和可靠性。同时

博客 495

聊聊我从底层算法到业务算法转型的这一年

我们新推出大淘宝技术年度特刊《长期主义,往往从一些小事开始——工程师成长总结专题》,专题收录多位工程师真诚的心路历程与经验思考,覆盖终端、服务端、数据算法、技术质量等7大技术领域,欢迎一起沟通交流。本文为此系列第七篇内容。第一篇:负责淘宝业务前端开发9年,聊聊我的心得第二篇:“技术开发最应该做什么?”,聊聊我在服务端开发5年的理解和收获第三篇:聊聊我在淘宝做性能分析的经历第四篇:聊聊我做NeRF-...

淘系技术 1296

海洋CMS admin_notify.php 远程代码执行漏洞复现(CVE-2024-30565)

海洋CMS admin_notify.php 接口处存在远程代码执行漏洞,经过身份验证的远程攻击者可利用该漏洞执行任意代码,写入后门文件,进而控制整个web服务器。

0xSec 2714

业务型算法岗与中台算法岗应该如何选择?

付鹏(熟知NLP领域各名词所写)回答:假如你是算法中台,你问自己几个问题:你怎么说服其他业务用自己的算法?业务使用了你的算法,没有出成果,你要如何证明,是业务方使用的问题,而不是你的工作不够 solid 呢?如果你想方设法让人相信了你的工作足够 solid,是业务方使用不对,让你来指导和 own 这个模型的调试和上线,你能保证做出成果吗?假如业务方使用模型成功上线,指标有提升,功劳大头属于业务方还...

weixin_40920183的博客 660

霍尼韦尔SoftMaster使用说明

霍尼韦尔SoftMaster使用说明

ET2012新版免狗免安装绿色软件

ET2012新版免狗免安祖昂绿色软件。,新界面,新视觉,

推荐业务多目标建模算法介绍:MMOE、OMOE、Shared-Bottom

在推荐业务中经常有“既要、也要、还要”的场景,比如做视频推荐业务的时候既要提升用户对于视频的点击率,也希望同时提升用户观看视频的时长。面对这样的诉求,通常需要在推荐系统中使用多目标建模算法。 多目标建模目前业内有两种模式,一种叫Shared-Bottom模式,另一种叫MOE,MOE又包含MMOE和OMOE两种。MMOE也是Google提出的一套多目标学习算法结果,被应用到了Google的内部推荐系统中,接下来分别介绍下这些多目标算法的结构。 算法结构介绍 上图基本能把Shared-Bottom、O

Garvin的专栏 7054

OV9734 DATASHEET,完整规格书

OV9734完整规格书,包括电气参数,尺寸规格,寄存器配置表等

5个真实业务场景中的算法应用案例解析

作为一个经常和算法打交道的开发者,今天想和大家分享几个让我印象深刻的算法应用案例。:通过分析用户历史行为数据(浏览、购买记录等),找出相似用户群体,推荐他们喜欢但当前用户尚未接触的商品。在开发过程中,我发现数据质量对推荐效果影响很大。这个案例让我深刻体会到,好的算法不仅要有高准确率,还需要可解释性,因为金融决策往往需要明确的依据。:将前两种方法的结果加权融合,既考虑用户行为相似度,又兼顾商品本身特性,效果比单一算法更好。这个案例的特殊性在于,算法错误可能导致严重后果,因此对模型的鲁棒性和可靠性要求极高。

SilverMoon18的博客 705

Data-Structures-and-Algorithm-Analysis-in-Java.pdf

作者: Weiss, Mark A. 出版社: Addison Wesley Data Structures and Algorithm Analysis in Java is an “advanced algorithms” book that fits between traditional CS2 and Algorithms Analysis courses. In the old ACM Curriculum Guidelines, this course was known as CS7. This text is for readers who want to learn good programming and algorithm analysis skills simultaneously so that they can develop such programs with the maximum amo...

从Kaggle竞赛到真实业务:聊聊那些年我们用错的AI算法和开源库

本文探讨了从Kaggle竞赛到真实业务场景中AI算法应用的常见误区与实用策略。通过对比竞赛思维与业务需求的差异,分析了XGBoost、神经网络等算法在实际应用中的局限性,并强调了特征工程、逻辑回归等传统技术的价值。文章还提供了框架选型建议和业务落地技巧,帮助开发者在保证效果的同时优化计算成本与系统性能。

weixin_29303701的博客 360

从相亲到风控:决策树算法在5个真实业务场景中的落地思考

本文探讨了决策树算法在五个真实业务场景中的落地应用,包括相亲匹配、金融风控、电商转化、医疗诊断和游戏AI。通过具体案例展示了决策树在提升匹配成功率、降低坏账率、优化用户行为路径、辅助医疗诊断和智能资源分配中的显著效果,突出了其可解释性和业务适配性的独特优势。

weixin_30417487的博客 514

别再被PPT忽悠了!聊聊APS系统选型时,业务、技术与算法的真实权重

本文深入探讨了APS系统选型时业务、技术与算法的真实权重,揭示了企业在选型过程中常见的认知陷阱,如算法先进性不等于系统适用性、技术架构的隐形成本等。通过实际案例和四层评估框架,帮助企业理性评估APS系统的业务匹配度、技术可行性和算法价值,避免被供应商的PPT忽悠。

weixin_30655569的博客 608

从地图上的星巴克到异常交易检测:DBSCAN算法在真实业务中的奇妙应用

本文探讨了DBSCAN算法在商业选址和金融风控中的创新应用。通过星巴克门店的密度分析和异常交易检测案例,展示了DBSCAN如何识别高密度核心区和稀疏异常点,优化商业决策并提升风险控制效率。文章还深入解析了算法参数选择的业务考量,为不同行业提供实用参考。

weixin_26861329的博客 397

three.js MeshPhongNodeMaterial 指南:用 TSL 节点管线驱动 Blinn-Phong 光照材质

MeshPhongNodeMaterial 是 three.js 在 TSL(Three Shading Language)节点体系下对经典 [MeshPhongMaterial](https://link.gitcode.com/i/fc9d11c03ef73af932185c5fa85b4d36) 的节点化重写,它继承了 MeshPhongMaterial 的"高光表面 + 镜面高光"视觉语言

gitblog_00800的博客 983

graphify 钩子接入实战:post-commit 自动重建知识图谱与 CLAUDE.md 原生集成

本篇技术指南围绕开源仓库 GitHub_Trending/graph/graphify 的技能参考文档 [hooks.md](https://link.gitcode.com/i/f54c654ec1512aae9ffb2a1aa66994e3) 展开,讲解如何通过 `graphify hook install` 为每个 git 仓库安装「提交即重建」的 post-commit 钩子,以及如何用

gitblog_00256的博客 734

聚类算法选型指南:从K-means到DBSCAN,5个真实业务场景教你如何避坑

本文深入探讨了聚类算法在5大业务场景中的实际应用与选型策略,涵盖K-means、DBSCAN等核心算法。通过电商用户画像、城市兴趣点规划等真实案例,提供数据预处理、参数调优等实战技巧,帮助读者避免常见陷阱,提升聚类分析效果。特别适合从事非监督学习和数据挖掘的从业者参考。

weixin_42639246的博客 342

从“既要又要”到“最优折衷”:NSGA-II算法在真实业务场景中的落地思考(以资源调度为例)

本文探讨了NSGA-II算法在资源调度等真实业务场景中的应用,通过多目标优化解决“既要又要”的决策困境。文章详细介绍了NSGA-II如何生成帕累托最优解集,帮助企业在成本与性能之间找到最佳平衡,并结合实际案例展示了其商业价值和技术实现。

weixin_30325487的博客 361

工业界目标检测类算法真实需求如何?15万+真实业务数据

一探究竟工业落地项目算法需求!

weixin_68787873的博客 807

DBSCAN vs K-means:5个真实业务场景下的聚类算法选型指南

本文深入对比DBSCAN和K-means聚类算法在5个真实业务场景中的应用表现,包括电商用户分群、金融异常检测、图像分割等。通过实际案例解析,帮助读者根据数据密度、簇形状等特征选择最优算法,提升业务决策效率。特别适合需要处理复杂密度分布的数据科学家参考。

weixin_29231725的博客 255
上一篇: Hibernate的配置文件hibernate.cfg.xml
下一篇: 《聪明的投资者》笔记
评论 7
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值