int getWindowSize(string str1, string str2)
{
   std::map<char, int> myStr2;
   for (int i=0; i< str2.length(); i++)
       myStr2.insert(std::pair<char, int>(str2[i], -1));
   printMap(myStr2);
	   
   int minWin = 100;   
   std::map<char, int>::const_iterator it;
   for (int i=0; i< str1.length(); i++)
    {
	   it = myStr2.find(str1[i]);
       if (it!= myStr2.end())
	    {
		  myStr2.erase(str1[i]);
	      myStr2.insert(std::pair<char, int>(str1[i], i));
		  int tmpMin = getMinIndex(myStr2);
		  if (minWin > (i-tmpMin+1) && tmpMin!=-1)
		  {
		     minWin = i-tmpMin+1;
			 std::cout<<"minWin...." << minWin <<"\n";
		  }
		  printMap(myStr2);
		}
	      
	}
	return minWin; 
}
Пример #2
0
static Eina_Bool storage_item_write(AppData *ad, CNP_ITEM *item)
{
	CALLED();
	StorageData *sd = ad->storage;
	int index = getMinIndex(sd->indexTable, STORAGE_ITEM_CNT);
	sd->indexTable[index] = ecore_time_unix_get();
	sd->itemTable[index] = item;

	item_write(sd->ef, index, item);
	storage_index_write(sd);
	dump_items(sd);
	return EINA_TRUE;
}
Пример #3
0
void printResultsSubString(Array<Array<double> >& results, 
      Array<Array<char> >& sourcedata, Array<Array<char> >& templatedata) {
   int i;
   double value;
   cout << "**simil\t**simxrf" << endl;
   int len = xlen;
   if (len <= 0) {
      len = templatedata.getSize();
   }

   int maxi;

   for (i=0; i<results.getSize(); i++) {
      maxi = getMinIndex(results[i]);
      value = results[i][maxi];
      if (rawQ) {
         cout << value;
      } else if (scalingQ) {
         value = normalize1(value, len);
	 value = int(value * 100.0 + 0.5) / 100.0;
	 printf("%.2lf", value);
      } else {
	 value = int(value * 100.0 + 0.5) / 100.0;
         value = normalize2(value, len);
	 printf("%.2lf", value);
      }
      cout << "\t";
      printSubStringInfo(results[i], results[i][maxi]);
      cout << "\n";
   }

   // int dots = templatedata.getSize() - 1;
   int dots = xlen - 1;
   for (i=0; i<dots; i++) {
      cout << ".\t.\n";
   }

   cout << "*-\t*-" << endl;
}
Пример #4
0
void SVMAnalysis::Evaluation() {
    std::cout<<"SVMAnalysis::Evaluation"<<std::endl;
    float count=0;
    int consensus;
    this->Total_Response = this->Total_Response.t();
    std::cout<<this->Total_Response.rows<<"x"<<this->Total_Response.cols <<std::endl;

    for (int i = 0; i <this->Total_Response.rows ; ++i) {

        consensus = getMinIndex(this->Total_Response.row(i));

        if(consensus == this->testLabels.at<int>(i))
            count++;
        this->Consensus.push_back(consensus);
    }

    std::cout<<"counter classification rate : "<<count/this->testLabels.rows*100<< "%"<<std::endl;
//    Evaluator evaluator(this->Consensus,this->testLabels,"SVM");
//    std::cout<<"classification rate : "<<evaluator.getAccuracy()<< "%"<<std::endl;

//    this->allQuadrabtsResponse.push_back();
    std::cout<<"\n Consensus: "<<this->Consensus.rows<<"\n"<<std::endl;

}
Пример #5
0
	template <class T> const T& Grid2<T>::getMinValue() const
	{
		vec2ul index = getMinIndex();
        return m_data[index.y * m_dimX + index.x];
	}