没有合适的资源?快使用搜索试试~ 我知道了~
在数组里面查找与目标数据接近的值(数组必须从小(0)到大排序后), 返回=相等元素的下标,或者靠近高位的元素的下标,-1=超范围
资源推荐
资源详情
资源评论
/// <summary>
/// (数组必须从小(0)到大排序后)返回=相等索引值,或者靠近高位的索引值,-1=超范围
/// </summary>
/// <param name="arr">集合数组</param>
/// <param name="查找值">要查找的对象</param>
public static int 查找近似值 ( int [ ] 集合数组 , int 查找值 )
{
int 查找方向=2;//2=初次使用,0=低位查找,1=高位查找
int 低位索引 = 0;
int 高位索引 = 集合数组. Length - 1;
while ( 低位索引 <= 高位索引 )
{
int middle = ( 低位索引 + 高位索引 ) / 2;
if ( 查找值 == 集合数组 [ middle ] )
{
return middle;//如果找到了就直接返回这个元素的索引
}
else if ( 查找值 > 集合数组 [ middle ] )
{
if ( 查找方向 ==1) 低位索引 = middle + 1;
else if ( 查找方向 == 2 ) 查找方向 = 1;
else
{
while ( 高位索引 >= 0 )
{
if ( 集合数组 [ 高位索引 ] <= 查找值 )
{
return 高位索引+1;//如果找到了就直接返回这个元素的索引
}
/// (数组必须从小(0)到大排序后)返回=相等索引值,或者靠近高位的索引值,-1=超范围
/// </summary>
/// <param name="arr">集合数组</param>
/// <param name="查找值">要查找的对象</param>
public static int 查找近似值 ( int [ ] 集合数组 , int 查找值 )
{
int 查找方向=2;//2=初次使用,0=低位查找,1=高位查找
int 低位索引 = 0;
int 高位索引 = 集合数组. Length - 1;
while ( 低位索引 <= 高位索引 )
{
int middle = ( 低位索引 + 高位索引 ) / 2;
if ( 查找值 == 集合数组 [ middle ] )
{
return middle;//如果找到了就直接返回这个元素的索引
}
else if ( 查找值 > 集合数组 [ middle ] )
{
if ( 查找方向 ==1) 低位索引 = middle + 1;
else if ( 查找方向 == 2 ) 查找方向 = 1;
else
{
while ( 高位索引 >= 0 )
{
if ( 集合数组 [ 高位索引 ] <= 查找值 )
{
return 高位索引+1;//如果找到了就直接返回这个元素的索引
}
资源评论
GTM00
- 粉丝: 2
- 资源: 13
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
最新资源
- 嵌入式开发概述及其常用编程语言介绍
- 5G模组升级刷模块救砖以及5G模组资料路由器固件
- C183579-123578-c1235789.jpg
- Qt5.14 绘画板 Qt Creator C++项目
- python实现Excel表格合并
- Java实现读取Excel批量发送邮件.zip
- 【java毕业设计】商城后台管理系统源码(springboot+vue+mysql+说明文档).zip
- 【java毕业设计】开发停车位管理系统(调用百度地图API)源码(springboot+vue+mysql+说明文档).zip
- 星耀软件库(升级版).apk.1
- 基于Django后端和Vue前端的多语言购物车项目设计源码
资源上传下载、课程学习等过程中有任何疑问或建议,欢迎提出宝贵意见哦~我们会及时处理!
点击此处反馈
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功