数组常见操作

手把手教你用UNI-MOL进行分子性质预测:从3D构象到实战结果 本文提供了使用UNI-MOL进行分子性质预测的完整实战指南。通过详细的环境搭建、3D构象生成、模型加载与微调步骤,手把手教你构建端到端的预测流水线。文章重点解析了如何利用UNI-MOL的3D分子表示学习能力,超越传统2D方法,实现对溶解度、活性等性质的更精准预测,并探讨了结果解读与模型分析方法。 阅读详情

一、取数组的最大值

/*定义一个获取最大值的功能:
        1、确定结果 :返回值类型 int
        2、未知内容:要获取哪个数组的最大值没有确定,则是数组没有确定

    思路:
        1、定义一个变量,记录住数组的比较大的元素。
        2、遍历整个数组,让数组的每一个元素都和该变量进行对比即可。
        3、当变量遇到比它大的元素,则让该变量记录该元素的值,当循环结束时,最大            值产生了
    */

    public static int getMax(int[] arr)
    {
        //定义变量记录较大的值,初始化为数组中的任意一个元素。
        int max = arr[0];

        for(int x=1; x<arr.length; x++)
        {
            if(arr[x]>max)
                max = arr[x];
        }
        return max;

    }

二、直接排序

/*
    选择排序。
    以一个角标的元素和其他元素进行比较。
    在内循环第一次结束,最值出现的头角标位置上。
    */
    public static void main(String[] args) 
    {
        int[] arr = {12,5,17,8,9};  //对于5元素的数组,只需要找出4个最大值就可以排序了。
        selectSort(arr);
    }

    public static void selectSort(int[] arr){

        //把最大值放在首位置。
        for(int j = 0; j<arr.length-1; j++){  //  控制的是轮数。
            for(int i = j+1 ; i<arr.length ; i++){ // 找出最大值
                if(arr[i]>arr[j]){
                    //交换位置
                    int temp = arr[i];
                    arr[i] = arr[j];
                    arr[j] = temp;
                }
            }
        }


/*
        //把老二放在第二个位置
        for(int i = 2  ; i< arr.length ; i++){
            if(arr[i]>arr[1]){
                int temp = arr[i];
                arr[i] = arr[1];
                arr[1] = temp;
            }
        }


        //把老三放在第三个位置
        for(int i = 3  ; i< arr.length ; i++){
            if(arr[i]>arr[2]){
                int temp = arr[i];
                arr[i] = arr[2];
                arr[2] = temp;
            }
        }

        //把老四放在第四个位置
        for(int i = 4  ; i< arr.length ; i++){
            if(arr[i]>arr[3]){
                int temp = arr[i];
                arr[i] = arr[3];
                arr[3] = temp;
            }
        }

*/


        //遍历数组,查看效果
        System.out.print("目前的元素:");
        for (int i = 0 ; i<arr.length  ;i++){
            System.out.print(arr[i]+",");
        }

    }

三、冒泡排序

 /*
    冒泡排序。
    比较方式:相邻两个元素进行比较。如果满足条件就进行位置置换。
    原理:内循环结束一次,最值出现在尾角标位置。
    */
    public static void main(String[] args) 
    {
        int[] arr = {12,8,17,5,9}; // 最大的索引值: 4   容量:5 
        bubbleSort(arr);
    }


    public static void bubbleSort(int[] arr){
        // 把最大值放在最后一个位置
        for(int j = 0 ; j<arr.length-1 ; j++){ //控制轮数
            for(int i = 0 ; i<arr.length-1-j  ; i++){  // 找出一个最大值   -1:避免角标越界。 -j:让每次参与比较的元减
                if(arr[i]>arr[i+1]){//相邻的元素比较
                    int temp  = arr[i];
                    arr[i] = arr[i+1];
                    arr[i+1] = temp;
                }
            }
        }

/*

        //把老二放在倒数第二个位置上。
        for(int i = 0 ;  i <arr.length-1-1 ; i++){
            if(arr[i]>arr[i+1]){
                int temp = arr[i];
                arr[i] = arr[i+1];
                arr[i+1] = temp;
            }   
        }


        //把老三放在倒数第三个位置上。
        for(int i = 0 ;  i <arr.length-1-2 ; i++){
            if(arr[i]>arr[i+1]){
                int temp = arr[i];
                arr[i] = arr[i+1];
                arr[i+1] = temp;
            }   
        }

        //把老四放在倒数第四个位置上。
        for(int i = 0 ;  i <arr.length-1-3 ; i++){
            if(arr[i]>arr[i+1]){
                int temp = arr[i];
                arr[i] = arr[i+1];
                arr[i+1] = temp;
            }   
        }

*/


        //遍历数组,查看效果
        System.out.print("目前的元素:");
        for (int i = 0 ; i<arr.length  ;i++){
            System.out.print(arr[i]+",");
        }

    }

四、折半查找(二分法)

/*
    为了提高查找效率,可使用折半查找的方式,注意:这种查找只对有序的数组有效。
    这种方式也成为二分查找法。
    */
    public static int halfSeach(int[] arr,int key)
    {
        int min,mid,max;
        min = 0;
        max = arr.length-1;
        mid = (max+min)/2;

        while(arr[mid]!=key)
        {
            if(key>arr[mid])
                min = mid + 1;
            else if(key<arr[mid])
                max = mid - 1;

            if(min>max)
                return -1;

            mid = (max+min)/2;
        }
        return mid;
    }

五、数组翻转

/*
    反转其实就是头角标和尾角标的元素进行位置的置换,
    然后在让头角标自增。尾角标自减。
    当头角标<尾角标时,可以进行置换的动作。
    */
    public static void reverseArray(int[] arr)
    {
        for(int start=0,end=arr.length-1; start<end; start++,end--)
        {
            swap(arr,start,end);
        }
    }
    //对数组的元素进行位置的置换。
    public static void swap(int[] arr,int a,int b)
    {
        int temp = arr[a];
        arr[a] = arr[b];
        arr[b] = temp;
    }
30. 如何使用 SEGW 的 redefine 功能对 SAP 标准 OData 服务进行扩展 SAP 发布了很多标准的 Fiori 应用,可以通过笔者的文章里提到的进行浏览。比如 My Opportunities 就是 SAP CRM 领域的一个 Fiori 应用:下图是 Opportunity 明细页面的 Info 标签页:假设我们想在这些标准字段的末尾增添一个新字段 Created By,用来维护当前 Opportunity 的创建者。 阅读详情

相关推荐

DLPFC.h5ad格式数据简便获取方式+STAGATE论文复现问题

简便获取DLPFC.h5ad格式的数据方式

apple_74057836的博客 2257

操作数组常用的几种方法

forEach用于循环遍历数组最常用的方法之一,它提供一个回调函数,可用于处理数组的每一个元素,默认没有返回值。回调函数的参数,第一个参数是数组的每一项,第二个参数是数组中每一项的下标 2、concat()——拼接数组 用来拼接数组 并且 会返回一个新数组。该方法不会改变原数组 3、filter()——过滤数组 filter返回值是一个新的数组 filter里面可以直接 return 筛选条件 4、slice()——截取元素 返回一个新的数组,包含从 start 到 end (不包括该元素)的 arrayO

kun_sl的博客 1557

C++利用spdlog生成日志

C++利用spdlog生成日志下载编译spdlog配置并使用 环境:Win10-x64+VS2015 spdlog是一个快速的C++日志库,能够兼容C++11,具备快速、无需依赖第三方库、支持多线程、多平台的优良特性! 下载编译spdlog 1.第一步,下载spdlog 下载spdlog,下载地址:https://github.com/gabime/spdlog#header-only-version,从Github上下载zip压缩包。下载完成后会获取一个名为spdlog-1.x.zip的压缩包 2.第二步

weixin_42975610的博客 3222

有关数组操作的26种方法 附举例说明

数组操作的方法

qq_43710066的博客 5820

Ollama本地大模型部署指南:从核心原理到实战避坑

大语言模型(LLM)作为人工智能领域的核心技术,通过海量数据训练获得强大的语言理解和生成能力。其工作原理基于Transformer架构,通过自注意力机制处理序列数据,在文本生成、代码编写和对话系统等场景展现出巨大价值。随着开源模型的普及,本地部署成为关注焦点,它解决了数据隐私和定制化需求,但面临环境配置和资源管理的挑战。Ollama作为开源工具,通过封装模型格式和统一API,简化了本地部署流程,支持GPU加速和性能调优,让开发者能够快速集成到IDE和自动化脚本中,实现高效的本地AI应用部署。

weixin_30915951的博客 452

report_delay_calculation/check_timing/report_annotated_parasitics/report_analysis_coverge

如何debug 一颗cell 或一段net 的delay, 常用的办法是用report_delay_calculation 报这颗cell 或这段net, 会得到形式如下的report, 从该report 中可以得到: 表头需要特别关注的是command, 确定report 的对象及加的option; From/To pin: cell 的input pin 和...

diedai7174的博客 1799

数组常用的操作方法

1,什么是数组?元素组成的有序集合2,创建数组两方式?示例:1,push 尾部添加 数组本身改变 返回值 是数组的长度2,pop 尾部删除 数组本身改变 返回值 返回删除的数组3,shift 头部删除 数组本身改变 返回值 返回删除的元素4,unshift 头部添加 数组本身改变 返回值 是数组的长度5,sort 排序 数组本身改变 返回值 排序后的数组6,reverse 反转 数组本身改变 返回值 反转后的数组7,splice 删除 添加 替换 arr.splice(下标,长度,插入

shfjcncjn的博客 3141

玄机-Linux权限维持-后门

玄机-Linux权限维持-后门

m0_46439803的博客 767

js 数组方法总结归类

1、创建数组var array = new Array(); var array = new Array(size);//指定数组的长度 var array = new Array(item1,item2……itemN);//创建数组并赋值2、取值、赋值var item = array[index];//获取指定元素的值 array[index] = value;//为指定元素赋值3、添加新元素ar

一个有思想的新时代农民工的博客 1461

PEMFC电化学入门:从电流密度到Tafel公式的实战计算指南

本文详细介绍了PEMFC电化学的基础知识,从电流密度计算到Tafel公式的应用,提供了实战计算指南。通过代码示例和常见问题排查,帮助工程师快速掌握燃料电池性能优化的关键参数,如交换电流密度和活化损失计算,适用于汽车动力和分布式发电等领域。

weixin_29229055的博客 551

Gazebo手册:【1】gazebo基本操作案例

欢迎来到初学者模块!本模块将引导您了解 Gazebo 的最基本功能。我们将构建一个简单的车辆来演示这些功能。这些教程适用于 Gazebo 新手和/或没有编程或 Linux 经验的人。 每个教程都建立在上一个教程的基础上,因此我们建议您按顺序学习这些教程。 一、何为Gazebo? Gazebo 是一款 3D 动态模拟器,能够准确有效地模拟复杂室内和室外环境中的机器人种群。虽然类似于游戏引擎,但 Gazebo 提供了更高保真度的物理模拟、一套传感器以及用于用户和程序的接口。 1............

gongdiwudu的专栏 2万+

数组操作的方法总结汇总

数组常用操作方法大全,unshift、shift、push、pop、splice、split、sort、reverse、indexOf、findIndex、reduce、every、some、map、forEach等各种操作总结汇总

qq_37485170的博客 1505

【制作100个Unity游戏之35】从零开始构建类《月圆之夜》《杀戮尖塔》的卡牌游戏(附带项目源码)

本文介绍了如何从零开始构建类似《月圆之夜》《杀戮尖塔》的卡牌游戏。主要内容包括:1)获取游戏素材资源;2)导入xyframe框架工具集;3)实现手牌弯曲排列效果,通过样条曲线控制卡牌位置和旋转;4)设计可扩展的MVD卡牌系统架构,分离数据层(ScriptableObject存储)、模型层(业务逻辑)和视图层(显示控制)。文中提供了完整的代码实现,并展示了卡牌动态排列的GIF效果演示。

向宇的博客,专注php/web全栈 unity游戏开发,欢迎大家评论纠错 1429

数组的常见操作方法

数组的常见操作 let arr = [1,4,5,7,9];   1. 判断数组中某个元素是否存在    para1:待判断的元素  返回值:元素在数组中的索引,如果不存在,返回-1  let isExist = arr.indexOf(4) !=-1; 2、向数组中追加元素  para1:要追加的元素  返回值是数组的长度; arr.push(100);    3、在...

星下云的博客 1万+

WINCC7.3破解文件

WINCC7.3硬件够破解文件,有需要的下载!WINCC7.3硬件够破解文件,有需要的下载!

pscad IEEE标准系统搭建说明

pscad IEEE标准系统搭建说明,包含典型的IEEE 9节点、14节点、30节点、39节点和118节点系统。内含标准测试系统的原始数据和潮流结果。

【前端】JavaScript中的常见的数组方法、类数组对象、数组的常见操作

在日常开发中经常会遇到各种类数组对象,最常见的就是在函数中使用的 arguments,它的对象只定义在函数体中,包括了函数的参数和其他属性。打印结果如下:可以看到,typeof 这个 arguments 返回的是 object,通过 Object.prototype.toString.call 返回的结果是 [object arguments],而不是 [object array],说明 arguments 和数组还是有区别的。length 属性就是函数参数的长度。

xs_good的博客 1283

jdk-8u144-linux-x64.tar.gz.

该资源为搭建Linux系统Java环境用,资源的后缀为tar.gz格式的压缩包

python常见数组操作

当然,Python中的数组操作可以非常复杂和强大,特别是当你使用NumPy、SciPy、Pandas等库时。NumPy和SciPy提供了大量的线性代数功能,包括矩阵分解、求解线性方程组等。SciPy提供了信号处理模块,可以进行滤波、卷积等操作。NumPy允许你使用复杂的索引和切片操作来处理多维数组。NumPy和SciPy提供了傅里叶变换和逆变换的功能.NumPy会“广播”较小的数组以匹配较大数组的形状。NumPy可以生成各种分布的随机数.

qq_41359358的博客 743

迈瑞BS系列全自动生化分析仪LIS协议接口手册(内含HL7和ASTM)

迈瑞BS系列全自动生化分析仪LIS协议接口手册,内含HL7和ASTM)

JS数组常见操作

let array = ['22222', '333333', '444444']; 1.数组长度 let length = array.length; console.log(length); 长度:3 2.增加新的元素到数组中 并返回新的数组长度 push(...items: T[]): number; let array = ['22222', '333333', '44444...

Tiger的专栏 805

数组及数组常见操作

数组定义 数组: 一种容器,用来存储同种数据类型的多个值 定义: 格式1: 数据类型[] 数组名; int [] arr; 格式2: 数据类型 数组名[] ; int arr[]; 数组初始化 初始化:在内存空间中为数组开辟空间,并将数据存入容器中的过程 1.动态初始化: 数据类型[] 数组名 = new 数据类型 [ 数组长度]; int [ ] arr = new int [3]; int: 数据类型 [ ]:代表数组 arr: 数组名称 new :开辟内存空间 3:数组长度 特点:通过指定数

jq19821278262的博客 388

java操作数组常见错误

lansy26的博客 418

Java数组和数组的常见操作

数组的概念 数组是用来存储多个数据的容器,有下面几个特点。 - 元素类型是一致的 - 长度是不可变的 如下图中,一包烟是一个数组,一篮子鸡蛋一个数组,一间教室也是一个数组。 数组的格式 //格式1:数据类型[] 数组名 = new 数据类型[长度]; int[] arrayA=new int[3]; //格式2:数据类型[] 数组名 = new 数据类型[]{元素1,元素2,元素....}; int[] arrayB=new int[]{10,20,30}; //格式3:数据类型[] 数组名

YunWQ的博客 1358

Python中关于数组的常见操作

这篇文章介绍了Python中数组(列表)的常见操作方法,包括:创建空数组、添加元素(append())、访问元素(索引)、修改元素(直接赋值)、删除元素(remove()和del)、遍历数组(for循环)、查找元素(index())、获取数组长度(len())、以及排序方法(sort())。其中排序方法可以设置reverse参数控制升/降序,key参数指定排序依据。这些操作涵盖了数组的基本增删改查功能,是Python中处理列表数据的基础知识。

zj_203240104的博客 320

Java--数组的常见操作

文章目录前言内容1. 数组的越界异常2. 数组的空指针异常3. 数组遍历4. 数组获取最大值元素5. 数组反转总结end 前言 任何方法都要付出实际行动才能真正的有用,所以这篇博客介绍一下数组的常见操作 内容 1. 数组的越界异常 直接上代码,看看下面代码运行之后会出现什么结果? public static void main(String[] args) { int[] arr = {1...

罗俊 1074

常见一维数组操作

/** * 1)(使用输入值初始化数组)下面的循环使用用户输人的数值初始化数组array * */ public static void inputInitalize() { int[] array = new int[10]; Scanner input = new Scanner(System.in); System.out.print("1)输入值初...

ahln8797的博客 134

DAY 16 数组的常见操作和形状

@浙大疏锦行

2402_87068048的博客 215

数组概述和数组常见操作问题

目录 前言 一、数组的概念 二、数组初始化 三、数组的访问 四、数组操作的两个常见问题 五、数组常见操作 六、数组排序 前言 数组在java编程语言中算是最重要的数据结构之一,作为java初学者,最先接触的也是数组,这足以看出学好数组的重要性,经过了一周多学习关卡二有关数组的内容,本人对数组有了初步的认识,在这里写出了有关数组的浅薄理解。 一、数组的概念 数组(Array)是有序数据的集合,数组中的每个元素具有相同的数据类型,可以用一个统一的数组名和不同的下标来唯一确定数组...

乔巴俊儿~~的博客 411

数组的一些常见操作汇总

数组的一些常见操作汇总 转自[url]http://www.nowamagic.net/datastructures/ds_SumaryOfArrayControl.php[/url] 数组是最基本的数据结构,关于数组的操作是程序员最经常用到的。这里将一些常用的操作写成函数。 数组求和 给定一个含有n个元素的整型数组a,求a中所有元素的和。可能您会觉得很简单,是的,的确简单,但...

253
上一篇: java攻城狮之路-面向对象(2)
下一篇: sublimeText3 java编译并控制台输出
柴米丨油盐
博客等级 码龄10年 16粉丝 20原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

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

抵扣说明:

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

余额充值