三元表的高效转置

本文深入探讨了数据结构和算法在数据处理流程中的关键作用,通过优化数据结构和改进算法策略,显著提升了数据处理效率。重点介绍了如何使用二叉树、队列、栈等数据结构进行数据组织,以及排序算法、动态规划等方法在解决实际问题中的应用。同时,文章还阐述了如何利用贪心算法、深度优先搜索、近邻算法等技术提高数据处理速度和精度。通过实例分析和代码实现,读者可以深入了解这些技术在实际场景中的应用,并学会如何在自己的项目中应用这些优化策略。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >


#include
 "stdafx.h"
#include <iostream>

const static int _MATRIX_NUM_ = 6;
const static int _ROW_NUM_     = 5;

enum { MAXTRIX_ROW = 0, MAXTRIX_COL = 1, MAXTRIX_VAL = 2, };

int _tmain( int argc , _TCHAR* argv[])
{
      int arrayThreeItem [_ROW_NUM_][3]={ { 0, 1, 5 }, { 1, 2, 4 }, { 2, 2, 3 }, { 3, 1, 19 }, { 5, 2, 12 } };

      // Record Each Row Number of Value
      int arrayItemNum [_MATRIX_NUM_];
      int arrayItemInitIndex [_MATRIX_NUM_];
      for( int i = 0; i < _MATRIX_NUM_ ; ++i )
     {
           arrayItemNum[i ]       = 0;
           arrayItemInitIndex[i ] = 0;
     }

      for( int i = 0; i < _ROW_NUM_ ; ++i )
     {
           int nCol = arrayThreeItem[ i][MAXTRIX_COL ];
           arrayItemNum[nCol ] = arrayItemNum[ nCol] + 1;
     }

      arrayItemInitIndex[0] = 0;
      for( int i = 1; i < _MATRIX_NUM_ ; ++i )
     {
           arrayItemInitIndex[i ] = arrayItemInitIndex[ i - 1] + arrayItemNum [i - 1];
     }

      int arrayReserve [_ROW_NUM_][3];
      for( int i = 0; i < _ROW_NUM_ ; ++i )
     {
           int nCol    = arrayThreeItem[ i][MAXTRIX_COL ];
           int nIndex = arrayItemInitIndex[ nCol];

           arrayReserve[nIndex ][MAXTRIX_ROW] = arrayThreeItem [i][ MAXTRIX_COL];
           arrayReserve[nIndex ][MAXTRIX_COL] = arrayThreeItem [i][ MAXTRIX_ROW];
           arrayReserve[nIndex ][MAXTRIX_VAL] = arrayThreeItem [i][ MAXTRIX_VAL];

          ++ arrayItemInitIndex[nCol ];
     }
     
      // Print
      std::cout <<"Init Three Item :"<<std ::endl;
      for( int i = 0; i < _ROW_NUM_ ; ++i )
     {
           std::cout <<"Row->"<<arrayThreeItem [i][ MAXTRIX_ROW]<<" Col->"<< arrayThreeItem[i ][MAXTRIX_COL]<< " Value->"<< arrayThreeItem[i ][MAXTRIX_VAL]<< std::endl ;
     }

      std::cout <<std:: endl<<"Reserve Three Item :"<< std::endl ;
      for( int i = 0; i < _ROW_NUM_ ; ++i )
     {
           std::cout <<"Row->"<<arrayReserve [i][ MAXTRIX_ROW]<<" Col->"<< arrayReserve[i ][MAXTRIX_COL]<< " Value->"<< arrayReserve[i ][MAXTRIX_VAL]<< std::endl ;
     }

      system( "pause" );
      return 0;
}
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值