首页 > 编程语言 >【Perl】常见数据结构与算法

【Perl】常见数据结构与算法

时间:2022-08-29 23:27:24浏览次数:49  
标签:binary search right mid Perl 算法 数据结构 my left

#二分查找
use strict;

sub binary_search {
    my ($target, @v) = @_;
    my $left = 0;
    my $right = @v - 1;
    while ($left < $right) {
        my $mid = ($left + $right) >> 1;
        if ($v[$mid] >= $target) {
            $right = $left;
        } else {
            $left = $mid + 1;
        }
    }
    $left;
}

my $left = binary_search(8, (1, 3, 5, 8));
print $left;

标签:binary,search,right,mid,Perl,算法,数据结构,my,left
From: https://www.cnblogs.com/zhengel/p/16637779.html

相关文章

  • 大数据架构和算法实现之路:电商系统的技术实战 pdf
    高清扫描版下载链接:https://pan.baidu.com/s/1ed9wiUcGoxfSih5UYls5LQ点击这里获取提取码大数据架构和算法实现之路:电商系统的技术实战介绍了一些主流技术在商业项目中的......
  • JS/TS算法---dp和贪心
    一、动态规划动态规划(dynamicprogramming,DP)是一种将复杂问题分解成更小的子问题来解决的优化技术。注意,动态规划和分而治之是不同的方法。分而治之方法是把问题分解......
  • C++各个版本新增对于算法竞赛有用特性
    C++各个版本新增对于算法有用特性C++11auto与decltype类型推导(摘自程序喵大人)autoauto可以让编译器在编译器就推导出变量的类型,话不多说上代码:autoa=10;//10是in......
  • 常数时间国密算法
    常数时间国密算法(三):SM2的素域求逆技术https://mp.weixin.qq.com/s/4dOgGKJ7bwTxsHr-xekz0Q常数时间国密算法(三):SM2的素域求逆技术原创 高能链 哔哩哔哩技术 2022-08-2......
  • 二分图最大匹配数量,匈牙利算法求解 python
    二分图最大匹配数量,匈牙利算法求解python,本质上是找增广回路"""#File:hungary.py#Time:2022/8/2821:08#Author:notomato#Description:#"""......
  • 使用 QuickSort 算法解决排序数组
    使用QuickSort算法解决排序数组这里我们将讨论一个案例,如何将一系列数字以随机排列的数组的形式排序,使其成为从最小到最大的数字序列。我们将使用最后一个元素的方法......
  • Redis主要数据结构以及应用场景
    String最常用的各式,以kv格式进行存储常用的场景在于对象json存储,以及对象缓存、分布式锁、计数器等。SETKEYVALUE存入字符串的键值对MSETkeyvalue[keyvalue......
  • 数据结构
    数据一般分为线性结构(连续摆放的,节约空间)Array(数组)定长,连续分配内存空间,元素数据类型一致,可以使用下标访问,读取速度快,但是增删较慢ArrayList:不定长,连续分配内存,......
  • 考研数据结构与算法(七)图论
    @目录一、图的基本概念1.1图的定义1.2基本术语1.2.1有向图1.2.2无向图1.2.3简单图1.2.4多重图1.2.5完全图1.2.6子图1.2.7连通、连通分量、连通图1.2.8强连通1.2.......
  • 算法总结
    1.序列化与反序列化二叉树序列化是将一个数据结构或者对象转换为连续的比特位的操作,进而可以将转换后的数据存储在一个文件或者内存中,同时也可以通过网络传输到另一个计算......