1. 程式人生 > >一維陣列、二維陣列、字串總結

一維陣列、二維陣列、字串總結

首先讓我們看看一維陣列

一維陣列主要在高精度計算上,所謂高精度計算,也就是模擬計算過程,然後就沒有什麼了……

然後是二維陣列

二維陣列就是座標系,難點在座標的變化上:

//1順時針旋轉90度
	for(j=1;j<=n;j++)
		for(i=1;i<=n;i++)
			c[j][n-i+1]=a[i][j];	
	if(equ(b,c))//equ判斷兩個數是否相等
	{
		printf("1");
		return 0;
	}
//2逆時針旋轉90度
	for(j=n;j>=1;j--)
		for(i=1;i<=n;i++)
			c[n+1-j][i]=a[i][j];
	if
(equ(b,c)) { printf("2"); return 0; }
//3中心對稱交換
	if(a[n/2+1][n/2+1]==b[n/2+1][n/2+1])
		for(i=1;i<=n;i++)
			for(j=1;j<=n;j++)
				c[n-i+1][n-j+1]=a[i][j];
	if(equ(b,c))
	{
		printf("3");
		return 0;
	}
//4不變
	if(equ(a,b))
	{
		printf("4");
		return 0;
	}
還有各種填充陣列等,這裡就不展示了。

接下來是字串

字串就有很多函數了

這裡,a,b為一個字串:

strlen(a):求a的長度

strcpy(b,a):將a複製到b裡

strcmp(a,b):比較a和b(字典序)

strcat(a,b):連線a和b

還有很多……

接下來是string

a.length():a的長度

a.substr(i,j):字串a裡從i開始後的j個字元

a.find(b):如果b不是a的字串,返回-1,否則返回第一次出現的串的第一個字元位置。

在字串中取數,介紹一種方法:

例如:a[3]={123};

t=0;
for(i=0;i<3;i++)
if(a[i]!=',')
t=t*10+a[i]-'0';

第一次:t=0;t=0*10+1;t=1;

第二次: t=1; t=1*10+2;t=12;

第三次:t=12; t=12*10+3;t=123;

經過三次迴圈,數就取出來了。

好啦總結就到這裡。

*********************************************************************************************

相關推薦

JavaScript 陣列陣列去重方法

1.使用ES6語法 set方法陣列去重:: a=[1,2,3,4,1,2,3,4]; [...new Set(a)]; //[1, 2, 3, 4] 2.一維陣列去重方法 function unique1(array){ var n = []; //一個新的臨時陣列

【C語言】陣列陣列與指標

一維陣列和指標: 1、一維陣列名: 對於這樣的一維陣列:int a[4];  a作為陣列名就是我們陣列的首地址, a是一個地址常量 .  首先說說常量和變數的關係, 對於變數來說, 用箱子去比喻再好不過了, 宣告一個變數就宣告一個箱子,比如我們開闢出一個蘋果型別的箱子, 給這個變

Java陣列定義和初始化陣列定義和初始化傳參方式Arrays類

陣列 陣列是Java中的一種資料型別,是一組資料的集合,陣列中的每個成員稱為元素。Java中的陣列是類型別(引用型別),Java的同一個陣列中,只能存放相同型別的資料元素。 一維陣列 一維陣列的定義方式 一維陣列有以下兩種定義方式,推薦使用第一種定義方式 <資料型別

陣列陣列的理解

陣列名字與指標關係的理解: 陣列名字實際上指向的是陣列中的“元素”的地址,而不是一個元素的地址。 例如: 一維陣列,二維陣列,甚至n維陣列在記憶體中的“元素”儲存都是連續的一個接著一個。 一維陣列: int a[3]={1,2,3}  // a陣列中有三個元素,而

陣列尋找最大子數列-Kadane演算法

一維陣列求最大子序列 參考部落格 問題: 給定一個數列,例如【−2, 1, −3, 4, −1, 2, 1, −5, 4】, 求一個連續的數列使得數列內的元素和最大, 示例中最大子數列應該是【4, −1, 2, 1】, 求和值為6。 這個問題是可以衍生到一

java 利用陣列陣列列印楊輝三角

列印楊輝三角 一維陣列 Triggle1.java package 第一章; //利用一維陣列列印楊輝三角 import java.util.Scanner; public class Triggl

new建立 陣列陣列陣列陣列...

用new建立多維陣列時,最後需要用delete,但是我在delete時遇到了麻煩,實在不能再浪費時間了,先mark一下,至少建立多維陣列這段是對的 以int型陣列為例,我們知道 一維陣列  int a[4] ={1,2,3,4}; 二維陣列  int b[3][4] = {

C#陣列 陣列陣列陣列

一位陣列: 初始化:int[] arr = new int[5] = {1,2,3,4,5}; using System; using System.Collections.Generic; using System.Linq; using System.Text; n

指標與陣列的關係(

一、指標和一維陣列間的關係 前提條件: int a[10];//元素個數隨意自己定 int *p = a;//定義指標時直接初始化,也可以分為兩步:int *p; p=a; 第i個元素的地址: &am

陣列()的動態申請及用vector的表示方法

轉載 :點選開啟連結 變長一維陣列 這裡說的變長陣列是指在編譯時不能確定陣列長度,程式在執行時需要動態分配記憶體空間的陣列。實現變長陣列最簡單的是變長一維陣列,你可以這樣做: #include<iostream> using namespace std;

陣列)與指標的關係與區別總結

陣列用於同種資料型別的儲存,常規的陣列選取的是一塊連續記憶體空間來儲存同種型別的資料。1、  靜態陣列靜態陣列是在宣告時已經確定子陣列大小的陣列,即陣列元素的個數固定不變。在編譯期間在棧中分配好記憶體的陣列,在執行期間不能改變儲存空間,執行後由系統自動釋放。陣列的宣告int

指標的賦值陣列的賦值陣列與指標

1、指標的賦值 int a; int *p; p = &a; 或者 int a; int *p = &a; 2、一維陣列的賦值 int *p,a[i]; p=a;//陣列的首地址傳給了指標變數,則該指標變數指向了該陣列。 或者

C++陣列)的動態分配new初始化memset和釋放delete

【原文】http://blog.csdn.net/shanzhizi/article/details/7835752 陣列的動態分配、初始化和釋放經常用到,這裡總結一下,尤其是二維陣列 一維陣列 一維陣列的動態分配,初始化和撤銷都好說,幾乎每一本C++教材都會做出詳細的說明

陣列陣列字串總結

首先讓我們看看一維陣列 一維陣列主要在高精度計算上,所謂高精度計算,也就是模擬計算過程,然後就沒有什麼了…… 然後是二維陣列 二維陣列就是座標系,難點在座標的變化上: //1順時針旋轉90度 fo

最大連續子陣列

    演算法導論中的一個題目,上次面試題中被擴充套件到了二維和二維環形陣列,記錄下以供參考。一、    一維連續子陣列 最大和    問題描述:給定一個一維陣列,求其中連續子陣列和的最大值。    樣

C#呼叫C++ 平臺呼叫P/Invoke 結構體--含有內建資料型別的陣列字串指標【六】

【1】結構體中含有內建資料型別的一維陣列 C++程式碼: typedef struct _testStru3 { int iValArrp[30]; WCHAR szChArr[30];

字串轉化為陣列

package testJava815; import java.io.ObjectInputStream.GetField; public class TestArray {private static String[] getRequiredPhotos() {retu

陣列陣列的建立初始化使用儲存指標訪問

1.解析一維陣列的建立和初始化 2.一維陣列的使用 3.一維陣列的儲存 4.一維陣列的指標訪問 5.解析二維陣列的建立和初始化 6.二維陣列的使用 7.二維陣列的儲存 8.二維陣列的指標訪問 1.解析一維陣列的建立和初始化

陣列陣列交錯陣列

元資料: var odata=["交易日期|股權激勵計劃型別|通知型別|交易類別", "20160511| 1| 1| 1", "20160511| 1| 1| 1", "20160515| 1| 5| 1", "20160512| 1| 2| 1", "20160515| 1| 2| 1", "20160

【劍指offor】1陣列中的查詢

題目連結: 二維陣列中的查詢 題目描述: 在一個二維陣列中(每個一維陣列的長度相同),每一行都按照從左到右遞增的順序排序,每一列都按照從上到下遞增的順序排序。請完成一個函式,輸入這樣的一個二維陣列和一個整數,判斷陣列中是否含有該整數。 解題思路 兩種思路 方法1