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

算法数组面试理论

数组是存放在连续内存空间内的相同类型数据的集合

(所以在删除添加元素的时候需要移动其他的元素的地址)

数组的元素是不能删除的,只能覆盖。(因为内存地址是连续的,所以不能删除。或者可以这么理解:在一些编程语言中,静态数组的大小是固定的,一旦分配了空间,就不能动态地删除元素。要删除元素,通常需要创建一个新的数组,然后将不需要的元素排除在外,这实际上是一种覆盖操作。动态数组(如ArrayList)可以更轻松地删除元素,因为它们支持自动扩展和缩小,但静态数组不支持。)

在C++中二维数组是连续分布的。

在Java中是没有指针的,同时也不对程序员暴露其元素的地址,寻址操作完全交给虚拟机。且用代码跑出来的结果是经过处理的,不是真正的地址,无法直接观察到是否连续

public static void test_arr() {int[][] arr = {{1, 2, 3}, {3, 4, 5}, {6, 7, 8}, {9,9,9}};System.out.println(arr[0]);System.out.println(arr[1]);System.out.println(arr[2]);System.out.println(arr[3]);
}
[I@7852e922
[I@4e25154f
[I@70dea4e
[I@5c647e05

推测java二维数组可能的排列如下

 

http://www.lryc.cn/news/457026.html

相关文章:

  • ASP.NET Zero是什么?适合哪些业务场景?
  • 获取期货股票分钟级别数据以及均线策略
  • 入门篇-1 数据结构简介
  • Anaconda安装
  • Elasticsearch学习笔记(六)使用集群令牌将新加点加入集群
  • 项目建设方案,软件技术方案,整体技术方案,软件建设文档编制(word原件)
  • vue3定义组件
  • BOM常见操作方法汇总
  • Python+whisper/vosk实现语音识别
  • 如何在算家云搭建LivePortrait(视频生成)
  • CSS 命名规范及 BEM 在前端开发中的实践
  • SwiftUI 6.0(iOS 18)新增的网格渐变色 MeshGradient 解惑
  • 【计算机网络】详谈TCP协议确认应答机制捎带应答机制超市重传机制连接管理机制流量管理机制滑动窗口拥塞控制延迟应答
  • rk3566开发之rknn npu 部署
  • 项目生产经理需要具备哪些技能和素质
  • Java数据类型常量
  • 如何提高浮点类型计算的精度
  • RabbitMQ简介及安装类
  • 游戏服务器防御策略:防止玩家因DDoS攻击而掉线
  • Django学习笔记二:数据库操作详解
  • Spring Boot 应用开发案例:在线书籍管理系统
  • 阿里140滑块-滑块验证码逆向分析思路学习
  • 使用 Linux 搭建并配置一个 NFS 服务器
  • python发包
  • 农行1面:说说 final,finally,finalize的区别
  • ChatGPT实时语音将于本周向免费用户推出:OpenAI DevDay 2024详细解读
  • 一个月学会Java 第7天 字符串与键盘输入
  • Java后端面试题(day16)
  • Auto-Animate:是一款零配置、即插即用的动画工具,可以为您的 Web 应用添加流畅的过渡效果
  • k8s之ingress-nginx-controller安装